面向对象的三大特征

封装

1、封装
(1)为何进行封装?
跨类可以直接访问成员变量(非静态),不安全,有隐患,如何解决?
① 通过Java中封装解决。
(2)如何封装
① 将非静态成员变量私有化
② 给每个非静态成员变量提供一对set、get方法
③ 跨类访问非静态成员变量,通过对象调用set、get方法
(3)封装思想的应用
隐藏内部的实现细节
写方法,类其实就是一种封装
Java中,写类的过程其实就是封装
(4)优点
提高安全性,不允许直接跨类操作属性
提高代码复用率
降低代码之间的耦合性
内聚:一个类独立完成某些功能的能力
耦合:类与类之间的关系的紧密程度
提倡:高内聚,低耦合

继承

1、为何会出现继承?
在这里插入图片描述
2、什么时候使用继承 当B属于A的一种
3、继承的实现 通过 extends 关键字
4、特点
(1)类与类之间是单继承
(2)父类私有成员子类不可以继承
(3)一个类默认继承的是Object类
(4)传递性 B extens A C extens B D extens C。
(5)缺点 增强类之间的关系
5、有继承时的构造方法
子类创建对象必须调用父类的构造方法
6、项目中使用继承
为了使用框架中的方法

多态

(1)什么是多态 编译和运行的结果不相同
(2)多态的实现
① 静态绑定 通过方法重载实现
② 动态绑定 继承关系
方法的重写:子类可以重写父类非私有、非静态的成员方法,不可以改变父类方法的声明
上转型对象
子类的对象指向父类的引用:Person p = new Worker();
下转型对象
1、前提:该对象必须是上转型对象
2、数据类型的强转
Employee emp = (Employee)person;
emp.work();
特点 不可以访问子类新增的成员 访问子类重写父类的方法
多态的前提1:是继承
多态的前提2:要有方法的重写
父类引用指向子类对象,如:Animal a = new Cat();
多态中,编译看左边,运行看右边

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值