您的位置:首页 > 其它

面向对象的三大特性

2016-10-27 16:14 204 查看
继承
一个类继承另一个类 具有其属性和不小于protected权限方法
如  创建一个动物类  动物都具有共性   就是年龄 种类
这是所有动物的共性   任何动物都具有的
public class  Animal{
  private   int  age;
 private   String  type;
 }

如果  创建 多个动物类 每次都要声明这两个属性  而如果都继承了这个动物类  就不用再显式声明这两个属性   就具有这两种属性   这就降低了代码的重复性  子类也可以有自己特有的方法 跟属性   以实现功能的扩展

public class Fish extends Animal {
private String  scale;
}

 

如果父类中 只有默认的无参数构造   子类  的构造函数 中可以不写super();
一旦父类中 有参构造     子类必须对父类的有参构造进行显示声明 super(...);
父类一般给子类提供访问其私有属性的方法   或者其他一些public 标识的功能性方法
父类中如果有抽象方法 子类必须对其进行实现而且  其作用域必须不小于原来声明的作用域   子类也可以复写父类的可以访问的方法   比如常见的 改写的  toString 方法    就是 改写所有类的父类 Object的 方法
 
一个接口继承另一个接口 或者一个接口继承多个个接口
java的多接口继承是对 类只能单继承的一种补充

封装
封装 是隐藏了功能的实现细节   比如 对数据   和基于数据的相关操作   只提供对外调用该功能实现的接口  因为隐藏了实现细节  所以增加了数据的安全性   同时因为对外只展现了功能的实现  所以实现了专业的分工   模块化       降低了耦合度  和易用性 不必理解功能实现的原理  简化了开发    

多态  
相同的事物,调用其相同的方法,参数也相同时,但表现的行为却不同。

多态存在的条件    必须有类的继承关系   必须有重写    父类引用指向 子类对象

此时子类的私有属性和方法 不能使用   此时父类调用 某个被子类改写的方法时    可以使用父类的同名方法  也可以使用子类的同名方法  实现的结果 可能是不同的 这就表现出了多态  多态在开发z
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  面向对象 继承