1.多态
class B extens A
A a1 = new B(); 就涉及了多态 了,B实现了向上转型,
如果B重写了A的方法,那会优先调用B重写的方法,
如果B中没有,会调用A的方法,
需要注意:不能调用子类中有而父类没有的方法。
2.String、StringBuilder、StringBuffer
String:字符串常量、不可变,适合于增删操作少的数据
StringBuilder:线程不安全,适合于单线程,增删操作比较多的数据
StringBuffer:线程安全,适合于多线程
3.不可变对象含义:
不能改变对象内的成员变量,包括基本数据类型的值不能改变,引用类型的变量不能指向其他的对象,引用类型指向的对象的状态也不能改变。
String对象可以使用反射来改变它的值。
4.Integer和int
Integer i1 = 200;
Integer i2 = new Integer(200);
int j = 200;
i1 == j true
i2 == j true
原理:自动拆箱
5.Integer(不new)在-128到127之间相等
Integer i1 = 127; Integer ji = 127; i1 == ji true
Integer i2 = 128; Integer j2 = 128; i2 == j2 false
https://www.jianshu.com/p/08010144d40f
感谢以上博主