对于基本类型,== 是进行数值的比较
对于引用类型,== 是进行地址值的比较
Object类的equals方法默认比较的是两个对象的地址值
String类中重写了equals方法
Objects工具类中的equals方法可以防止空指针异常
双引号直接写的字符串在常量池中,new的不在池当中
用static关键字,那么这样的内容不再属于对象自己,而是属于类的。
无论是成员变量还是成员方法。如果有了static,都推荐使用类名称进行调用。即类名称.静态变量,类名称.静态方法()。
注意事项:
1.静态不能直接访问非静态;原因:在内存中是先有的静态内容,后有的非静态内容
2.静态方法中不能使用this
继承关系中,父子类构造方法的访问特点
1.子类构造方法中有一个默认的“super()”调用,所以一定是先调用的父类构造,后执行的子类构造。
2.子类构造可以通过super关键字来调用父类重载构造
3.super的父类构造调用,必须是子类构造方法的第一个语句,不能一个子类构造多个父类构造。
总结:子类必须调用父类构造方法,不写则默认赠送super();写了则用写的指定的super调用,super只能有一个,而且必须是第一个。
A this()调用也必须是构造方法的第一个语句,唯一一个
B super 和 this 两种构造调用,不能同时使用。