java基本数据类型的包装类[34]
一、基本数据类型包装类
1.Number:
Integer,Short,Long,Double,Float,Byte.都是Number的子类表示数字.
2. Object:
Character,Boolean都是Object的子类.
3.自动装箱与拆箱
把基本数据类型转换为包装类,成为自动装箱.
Integer i1=new Integer(10);//或Integer i1=10;
把包装类转换为基本数据类型,成为自动拆箱.
int i2=i1.intValue();
二、Integer面试题
Integer i1=128;
Integer i2=128;
System.out.println(i1==i2);//false
Integer i3=127;
Integer i4=127;
System.out.println(i3==i4);//true
答:
因为享元模式,它使用共享对象,用来尽可能减少内存使用量以及分享更多资讯给相似对象,适用于当大量对象使用重复的变量而导致产生大量内存,使用享元模式可以将127到-128的变量也就是一个字节的变量保存在常量池内,有需要直接在常量池中取,所以对象地址也会一致.
运用共享技术有效支持大量细粒度的对象.
三.包与访问修饰符
修饰符的作用范围:
public:同一个类,同包,不同包子类,不同包非子类.
protected:同一个类,同包,不同包子类 默认:同一个类,同包
private:同一个类
四.oo原则
1.开闭原则:一个软件实体,如类,模块和函数,应该对扩展开放,对修改关闭.
2.合成/聚合复用原则:新对象的某些功能在已经创建好的对象里实现,那么尽量用已有对象提供的功能,使之成为新对象的一部分,而不需要重新创建.
3.依赖倒置原则:高层模块不应该依赖底层模块,二者都应该依赖其抽象,抽象不依赖细节,细节依赖抽象.
4.接口隔离原则:客户端不应该依赖它不需要的接口,一个类对另一个类的依赖应该建立在最小接口上.
5.迪米特法则:一个对象应该对其他对象保持最少的了解.
6.里氏替换原则:所有引用基类的地方必须能透明的使用其子类的对象.
7.单一职责原则:不要存在多于一个导致类变更的原因,即一个类只负责一项职责.
五.小结
本章概述了java基本数据类型的包装类,还有一个面试题,以及修饰符和oo原则,内容比较偏于文字,但是这些内容都属于必不可少的基础;
有哪里不足或者有更好的建议,欢迎留言吐槽,有哪里不懂的小伙伴,可以私信我,我会一一答复,感谢认可,感谢支持!