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 }