前面的代码我都看懂,就是这句HelloWorld hello2=new HelloWorld();不明白
我不懂为什么新建了一个对象,他又输出了一遍初始化语句。。。。。。。。。
告诉你真正原因你就懂了。其实很简单,你仔细看下执行结果,你就会明白一点。其实写这句话的原因,是让你知道:hello1在创建的时候已经把静态初始化模块执行了,因为静态初始化模块只会在类加载时执行一次,
所以在hello2初始化的时候就不会执行静态初始化模块了。所以Hello2初始化后,就只显示了两条结果,“通过。。。变量num3赋值”,这个句话就没有显示了。
这是告诉你实例化对象并不是唯一的,你可以实例化不同的对象,就像苹果是水果,香蕉也是水果一样,两者名字不一样但是都是水果
假设Helloworld是描述人这个大的对象,hello1就是创造一个叫张三的具体的人,hello2就是李四。
实例化HelloWorld的一个对象,命名为hello2
就是在HellWorld这个类中创建一个名字叫hello2的对象。
把类变成对象 虚的变成实的 要不没有意义 new 是开辟了一个新的内存空间