`
wlxt_8436
  • 浏览: 15838 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

面向对象三大特性特点--封装,继承,多态

阅读更多
抽象 -->三大特性
一、封装 encapsulation  高内聚低耦合
1、可见性、访问权限 public protected default private
2、访问器 setter与getter、isser   属性私有化 ,间接方式访问(获取、赋值)属性
3、输出问题:尽量不要方法本身里面输出,调试、后台。在方法调用出输出
4、分层(概念):界面层 、服务层、访问层 、实体层(封装数据)、工具层(常用公共方法)
1)上一层只能调用下一层,不能越级调用
2)封装对象,传递对象的地址。
5、单例:确保一个类有且只有一个实例
1)、私有构造器
2)、私有静态实例
3)、公共的静态方法,访问该实例
二、继承 inheritance
1、关键字:extends
2、延续和扩展类的属性及方法
3、继承除构造器以外的一切东西
4、java中只支持单继承,可以多层继承
5、Object基类、根类
6、实例化过程:创建子类一定会创建父类
加载类时执行一次: Object静态块 父类静态块 子类静态块
创建对象是执行多次:Object 构造器 父类构造块 构造器 子类构造块 构造器
7、重写:父类方法不满足子类要求,需要对其逻辑更改。
  在合理范围内提供可见性
前提: == 继承 、方法签名必须一致
规则: <= 返回类型(void 基本 == 引用 <=)  异常 <=
         >= 可见性 子类>=父类
8、以下不会重写
1)、私有方法
2)、静态方法
3)、属性
9、发生继承,找方法
1)、延续方法
2)、重写方法
3)、新增方法
编译时:从本类向上追溯 Object
运行时:从对象的归属类向上追溯Object
追溯:就近最优原则
10、重写与重载区别
1)环境:子类与父类 本类中
2)形参:重写必须相同 形参不同
3)重写 与返回类型 异常 可见性 有关
   重载 与返回类型 异常 可见性  无关
三、多态
1 .多态:继承 重写 父类引用指向子类对象
注意:发生多态时,对子类新增方法不可见。需要使用本类新增方法,必须将类型转换为自己的类型。
2.子类与父类的关系
父类是父类
子类是子类
子类是父类
父类不是子类
不同子类不能转换
3.编译时看类型,运行时找对象
4.类型转换
1)、自动类型转换: 大范围的变量 =(大范围的类型) 小范围的值
2)、强制类型转换(发生多态为前提): 小范围的变量 =(小范围类型) 大范围的值
编译正确:编译类型
运行错误:找对象
5.多态使用
1)、形参使用多态
2)、返回类型使用多态
6.instanceof   判断某一引用是否属于某类、某一批类的实例
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics