代码如下:

class Person
{
private String name="haha";
private int age;
private static String country="cn";
Person(String name,int age)
{
this.name=name;
this.age=age;
}
<span style="white-space:pre"> </span>//构造代码块的运用
{
System.out.println(this.name+"..."+this.age);
} public void setName(String name)
{
this.name=name;
} public void spreak()
{
System.out.println(this.name+"..."+this.age);
} public static void showCountry()
{
System.out.println("country="+country);
method();//静态成员方法可以调用静态成员方法
}
public static void method()
{
System.out.println("method run");
}
}
class PersonDemo11
{
public static void main(String[] args)
{
Person p=new Person("张三",20);
p.setName
}
}

Person p=new Person("张三",20);该句话都做了什么事情?

1、因为new用到了Person.class,所以会先找到Person.class文件,并加载到内存中

2、执行该类中的static代码块,如果有的话,给Person.class类进行初始化

3、在堆内存中开辟空间分配内存地址

4、在堆内存中建立对象的特有属性,并进行默认初始化

5、对属性进行显示初始化

6、对对象进行构造代码块初始化

7、对对象进行与之对应的构造函数进行初始化

8、将内存地址付给栈内存中的p变量

最新文章

  1. ELK日志分析系统搭建(转)
  2. 数据结构--树状数组(黑龙江省第八届大学生程序设计竞赛--post office)
  3. iOS开发之通知使用总结
  4. extjs 表格可复制
  5. ecshop 改变sitemap.xml的位置
  6. Zoj 3868 GCD Expectation
  7. hdu1520 第一道树形DP,激动哇咔咔!
  8. robot framework 使用三:他们主动浏览器的兼容性
  9. Codeforces Round #243 (Div. 2) Problem B - Sereja and Mirroring 解读
  10. 【javaFX学习】(二) 面板手册--1
  11. Javascript闭包的几种用法
  12. PWA初体验
  13. 1.8 Double-Opening and Virtual Machine
  14. python爬虫之git的使用(windows下pycharm使用)
  15. Spark架构与作业执行流程简介
  16. node项目初始化的一些配置
  17. Python 实现C语言 while(scanf(&quot;%d%d&quot;, &amp;a, &amp;b) != EOF) 语句功能
  18. C++风格与C风格文件读写效率测试-vs2015,vs2017
  19. python学习笔记 IO 文件读写
  20. CentOS 7中mariadb编译安装教程systemctl启动

热门文章

  1. HTML to PDF pechkin
  2. DPM(Deformable Part Model)原理详解(汇总)
  3. RabbitMQ功能测试+性能测试简单方法
  4. DevOps开源工具的三种分类整理
  5. .Net 异步调用
  6. quick-cocos2d-x3.2 scheduler使用注意事项
  7. 搭建nginx服务器和直播流媒体服务器
  8. Hadoop-2.6.0上调用C的API实现相似云盘的功能
  9. [译]GLUT教程 - 整合代码6
  10. nginx大量TIME_WAIT的解决办法 netstat -n | awk &#39;/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}&#39;