java继承与多态全解
- 格式:ppt
- 大小:267.50 KB
- 文档页数:60


【Java】⾯向对象的四个基本特征:唯⼀性、分类性、继承性
和多态性
1.唯⼀性
唯⼀性是指每个对象都是唯⼀的,具有唯⼀标识符。
在对象的整个⽣命周期中,标识符是⼀成不变的,系统可通过该标识符,在内存中找到相应对象。
2.分类性
分类性是指将具有⼀致属性和⾏为的对象抽象成类,只保留与应⽤有关的性质,其他内容忽略。
任何类的划分都是主观的,但必须与具体应⽤有关。
3.继承性
继承性是指⼦类⾃动继承⽗类的属性和⽅法,并且可以在⽗类的基础上加⼊若⼲新内容。
例如,“⼈”这个类抽象了这个群体的基本特征,⽽“学⽣”和“⽼师”除了具备“⼈”所定义的基础特性外,各⾃⼜具有各⾃的新特性。
继承性是⾯向对象程序设计语⾔不同于其他语⾔的最重要特点。
通过类的继承,可使公共的特性能够共享,提⾼代码的可重⽤性、减少冗余,同时简化了对象、类的创建⼯作,规范了类的等级结构。
4.多态性
多态性是指不同对象,在收到同⼀消息后,可产⽣不同结果,具有不同表现⾏为。
多态性允许每个对象以⾃⾝的⽅法去响应共同消息,以此增强软件的灵活性和可重⽤性。
继承跟多态的区别在计算机语言中有一种是JAVA的语言,里面有一些方法,继承,重载,重写。
下面是店铺为你整理的继承跟多态的区别,供大家阅览!重载,继承,重写和多态的区别:继承是子类获得父类的成员,重写是继承后重新实现父类的方法。
重载是在一个类里一系列参数不同名字相同的方法。
多态则是为了避免在父类里大量重载引起代码臃肿且难于维护。
网上看到一个有趣的说法是:继承是子类使用父类的方法,而多态则是父类使用子类的方法。
下面的例子包含了这四种实现:class Triangle extends Shape {public int getSides() { //重写return 3;}}class Rectangle extends Shape {public int getSides(int i) { //重载return i;}}public class Shape {public boolean isSharp(){return true;}public int getSides(){return 0 ;}public int getSides(Triangle tri){return 3 ;}public int getSides(Rectangle rec){return 4 ;}public static void main(String[] args) {Triangle tri = new Triangle(); //继承System.out.println("Triangle is a type of sharp? " + tri.isSharp());Shape shape = new Triangle(); //多态System.out.println("My shape has " + shape.getSides() + " sides.");}}注意Triangle类的方法是重写,而Rectangle类的方法是重载。