面向对象简要(3)

一、 面向对象-封装性
1:说明:对于程序的合理封装可以让外部的调用更加方便,更加利于编程
2:优点:01)提高代码的安全性 02)提高代码的复用性
03)封装细节,便于修改内部代码
04)简化外部调用,便于使用者使用
3:封装的实现:通过访问权限修饰符来控制那些需要进行封装
4:权限修饰符:01) private表示私有,只有自己的类才能访问
02)default(默认)表示没有修饰符修饰,只能访问同一个包下的类
03)protected表示可以被同一个包的类以及其他包中的子类访问
04)public表示可以被该项目的所有包中的所有类访问
二、javabean
1:说明:是一系列类的统称,模版类
2:规范要求:1)类的公共的,被public修饰 2)至少提供一个空构造
3)提供toString和equals 方法 4)属性私有化,至少提供一个公共的访问方式
三、面向对象-多态性
1:多态:同一个方法调用由于对象的不同可能会产生不同的行为。
2:优点:多态可以使程序变的更加灵活,便于后期维护
3:多态存在条件:继承,方法重写,父类引用指向子类对象
4:调用:父类的引用调用方法的时候,会调用子类重写的方法,多态引用对子类新增内容
不可见
5:多态使用成员:01)成员变量:编译运行看左边|父类
02) 编译看左边,运行看右边, 编译看父类,运行找子类
6:对象的转型:向上转型:小类型数据(子类)–>大范围类型(父类)
向下转型:大类型数据–>小范围类型 ()加括号,写转型对象
注意:多态前提,父类引用只能调用父类中有的内容,对子类新增内容不可见(变量,方法)
如果想要调用子类新增内容,需要涉及到向下转型,转为对象真实类型
四、抽象
1:说明:abstract修饰的类就是抽象类,abstract修饰的方法就是抽象方法(没有方法体,只有声明)
2:使用:01)有抽象方法的类只能定义成抽象类02)抽象类不能实例化,不能用new来实例化抽象类03)抽象类只能用来被继承04) 抽象方法必须被重写后才能使用05) abstract关键字不能与private,final,static,和native一起使用06)抽象类中的内容都要通过具体子类使用
五、toString和equals
1:toString使用:01) 配合方法的重写可以实现把对象以字符串的形式展示|返回(所有成员属性的值)
02) 如果不重写,使用Object类中的toString,展示的为类的包名+类名@地址值
2:equals使用: 01) 如果使用Object类中的equals方法,比较的也是对象的地址值
02) 配合方法的重写,实现比较对象内容而非地址

发布了13 篇原创文章 · 获赞 0 · 访问量 162

猜你喜欢

转载自blog.csdn.net/rebirthEarth/article/details/105149398