面向对象的三大特征

面向对象的三大特征
继承:inheritance
1).子类继承父类
2).子类可以从父类继承属性和方法
3).子类可以提供自己单独的属性和方法
封装/隐藏encapsulation
1)对外隐藏某些属性和方法
2)对外公开某些属性和方法
3)多态 polymorphism
4)为了适应需求的多种变化,使代码变得更加通用!
5)面向过程只有封装性(功能的封装,而没有数据的封装),没有继承和多态
隐藏/封装(encapsulation)
• 我们为什么需要封装?封装的作用和含义?
• 就不如我要看电视,只需要按一下开关和换台就可以了。有必要了解 电视机内部的结构吗?有必要碰 碰显像管吗?
• 隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从 而提高系统的可扩 展性、可维护性。
• 我们程序设计要追求“高内聚,低耦合”。
• 高内聚 :就是类的内部数据操作细节自己完成,不允许外部干涉; • 低耦合 :仅暴露少量的方法给外部使用
怎样使用访问控制符,实现封装呢?
• 成员(成员变量或成员方法)访问权限共有四种:
• public 公共的可以被项目中所有的类访问。(项目可见性)
• protected 受保护的可以被这个类本身访问;同一个包中的所有其他的类访问; 被它的子类(同一个包以及不同包中的子类)访问
• default/friendly 默认的/友好的(包可见性)被这个类本身访问;被同一个 包中的类访问。
• private 私有的 • 只能被这个类本身访问。(类可见性)
• 类的访问权限只有两种
• public 公共的 • 可被同一项目中所有的类访问。 (必须与文件名同名)
• default/friendly 默认的/友好的 • 可被同一个包中的类访问
使用访问控制符,实现封装
• 封装要点:
private私有的修饰符只能在一个类里面访问。
default默认的/友好的的修饰符可以在同一个包同一个类中访问。
protected 受保护的修饰符可以这个类本身访问;同一个包中的所有其他的类访问;被它的子类(同一个包以及不同包中的子类)访问。
public 公共的修饰符可以访问项目中所有类的访问。

• 类的属性的处理:
• 一般使用private. (除非本属性确定会让子类继承)
• 提供相应的get/set方法来访问相关属性. 这些方法通常是public,从而提供对属性的读取操作。 (注意:boolean变量的get方法是用:is开头!)
• 一些只用于本类的辅助性方法可以用private,
• 希望其他类调用的方法用public

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值