Java随笔

- 如果希望自定义类能与集合库正常协同工作,一定要在覆盖equals()方法同时,也覆盖hashcode()方法,使2个对象用equals()方法判断相等时,用hashcode()方法判断也相等(即返回相等的整数);

- String和原始数据的封装类型都是不可变类;

- 创建开销较大的对象可使用单例;

- NewTest  test : 声明一个对象test时,将在栈内存为对象的引用变量test分配内存空间,但NewTest的值为空,称test是一个空对象。空对象不能使用,因为它还没有引用任何"实体"。

- test = new NewTest()时,在堆内存中为类的成员变量aaa,bbb分配内存,并将其初始化为各数据类型的默认值;接着进行显式初始化(类定义时的初始化值);最后调用构造方法,为成员变量赋值,返回堆内存中对象的引用(相当于首地址)给引用变量test,以后就可以通过test来引用堆内存中的对象了。

你可能感兴趣的:(Java随笔)