厦门专业网站建设,帝国cms 网站搬家,进入wordpress后台慢,评测网站做的那些条形图Java继承概述 1.多个类中存在相同属性和行为时#xff0c;将这些内容抽取到单独一个类中#xff0c;那么多个类无需再定义这些相同属性和行为#xff0c;只要继承那个类即可。 2.在Java中通过extends关键字可以实现类与类的继承。 例如#xff1a;class 子类名 extends 父类… Java继承概述 1.多个类中存在相同属性和行为时将这些内容抽取到单独一个类中那么多个类无需再定义这些相同属性和行为只要继承那个类即可。 2.在Java中通过extends关键字可以实现类与类的继承。 例如class 子类名 extends 父类名 {} 3.单独的这个类称为父类基类或者超类这多个类可以称为子类或者派生类。 4.有了继承以后我们定义一个类的时候可以在一个已经存在的类的基础上还可以定义自己的新成员。 ----------------------------------------------------------------------------- 首先我来写两个代码//定义学生类class Student { String name; int age; public Student() {} //getXxx()/setXxx() public void eat() { System.out.println(吃饭); }}//定义老师类class Teacher { String name; int age; public Teacher() {} //getXxx()/setXxx() public void eat() { System.out.println(吃饭); }} 我们观察上面两个代码 发现nameage成员变量以及getXxx()/setXxx()还有eat()等都是相同的。 如果我们后来继续定义类举例工人类军人类。他们是不是也具备这些内容呢 那么我们每一次定义这样的类的时候都要把这些重复的内容都重新定义一遍。 麻烦不当然麻烦。所以我们要考虑改进那么如何改进呢 我这想的我能不能把这些相同的内容给定义到一个独立的类中。 然后让这多个类和这个独立的类产生一个关系有了这个关系后 这多个类就可以具备这个独立的类的功能。 为了实现这个效果Java就提供了一个技术继承。 父亲 4个儿子继承怎么表示呢继承的格式是什么样子的呢class Fu {}class Zi extends Fu {} 我们就回头修改我们的代码class Person { String name; int age; public Person() {} //getXxx()/setXxx() public void eat() { System.out.println(吃饭); }}class Student extends Person { public Student() {}}class Teacher extends Person { public Teacher() {}} ----------------------------------------------------------------------------- Java继承案例和继承的好处 1 /*2 继承概述3 把多个类中相同的内容给提取出来定义到一个类中。4 5 如何实现继承呢? 6 Java提供了关键字extends7 8 格式9 class 子类名 extends 父类名 {}
10
11 好处
12 A:提高了代码的复用性。
13 B:提高了代码的维护性。
14 C:让类与类之间产生了关系是多态的前提。
15
16 类与类之间产生了关系其实也是继承的一个弊端
17 类的耦合性增强了。
18
19 开发的原则低耦合高内聚。
20 耦合类与类之间的关系。
21 内聚就是自己完成某件事情的能力。
22 */
23
24 //使用继承前
25 /*
26 class Student {
27 public void eat() {
28 System.out.println(吃饭);
29 }
30
31 public void sleep() {
32 System.out.println(睡觉);
33 }
34 }
35
36 class Teacher {
37 public void eat() {
38 System.out.println(吃饭);
39 }
40
41 public void sleep() {
42 System.out.println(睡觉);
43 }
44 }
45 */
46
47 //使用继承后
48 class Person {
49 public void eat() {
50 System.out.println(吃饭);
51 }
52
53 public void sleep() {
54 System.out.println(睡觉);
55 }
56 }
57
58 class Student extends Person {}
59
60 class Teacher extends Person {}
61
62 class ExtendsDemo {
63 public static void main(String[] args) {
64 Student s new Student();
65 s.eat();
66 s.sleep();
67 System.out.println(-------------);
68
69 Teacher t new Teacher();
70 t.eat();
71 t.sleep();
72 }
73 } 我的GitHub地址https://github.com/heizemingjun 我的博客园地址http://www.cnblogs.com/chenmingjun 我的蚂蚁笔记博客地址http://blog.leanote.com/chenmingjun Copyright ©2018 黑泽明军【转载文章务必保留出处和署名谢谢】