Java_单继承和多继承
1 /* 2 继承: 3 好处:提高了代码的复用性,让类与类之间产生了关系。 4 将对象中的共性内容不断的向上抽取,就形成了关系,就有了继承,有了子父类, 5 提高了代码的复用 6 7 继承特点: 8 1,在Java中只能单继承,多继承的机制被Java语言改良了(Java基于c语言,c支持多继承) 9 单继承:一个类只能有一个父类,一个儿子只能有一个父亲 10 多继承:一个类可以有多个父类,一个儿子有多个父亲 11 12 class A 13 { 14 void show 15 { 16 System.out.println("show A") 17 } 18 } 19 class B 20 { 21 void show 22 { 23 System.out.println("show A") 24 } 25 } 26 class C extends A //单继承 27 {} 28 29 class D extends A,B{} 多继承 30 java不支持多继承, 原因:会产生调用的不确定性 31 32 33 Java支持多层继承,这样就出现了继承体系: 34 class B extends A{} 35 36 class C extends B{} 37 A 38 |-B 39 |-C 40 如何去使用一个继承体系中的成员呢? 41 1,查阅该体系中的顶层类的内容,因为通过该类可以了解该体系的基本功能 42 2,创建最子类的对象,即可以调用共性的基本功能,也可以使用子类的特有功能 43 44 简单说“ 45 看父类内容,建子类对象使用 46 47 48 什么时候定义继承呢? 49 必须是事物之间存在着所属关系时,才定义继承。 50 所属关系:XXX是ZZZ中的一种,用英文表示:is a 关系 51 52 53 继承的误区:不要仅仅为了提高复用,为了方便获取其他类中的内容二区继承 54 55 56 57 class DemoA 58 { 59 void show1{}; 60 void show2{}; 61 } 62 63 class DemoB //extends DemoA 64 { 65 //void show1(){}; 66 void show3(){}; 67 } 68 */ 69 class Person 70 { 71 String name; 72 int age; 73 } 74 75 class Student extends Person 76 { 77 void study() 78 { 79 80 } 81 } 82 83 class Worker extends Person/*extends 继承 Person 父类 基类 超类*/ 84 { 85 86 void work() 87 { 88 89 } 90 } 91 92 class ExtendsDemo 93 { 94 public static void main(String[] args) 95 { 96 Student stu = new Student(); 97 stu.name="lisi"; 98 stu.age=23; 99 stu.study(); 100 System.out.println("Hello World!"); 101 } 102 }