面向对象_继承的引入和概述

网友投稿 584 2022-10-14

面向对象_继承的引入和概述

面向对象_继承的引入和概述

首先写两个代码:

//定义学生类 class Student{ int name; int age; public Student(){} //getXxx()/setXxx() public String getName(){ return name; } public void setName(String name){ this.name = name; } public int getAge(){ return age; } public void setAge(int age){ this.age = age; } public void eat(){ System.out.println("吃饭"); } } //定义老师类 class Teacher{ String name; int age; public Teacher(){} //getXxx()/setXxx() public String getName(){ return name; } public void setName(String name){ this.name = name; } public int getAge(){ return age; } public void setAge(int age){ this.age = age; } public void eat(){ System.out.println("吃饭"); } } 观察上面两个代码: 发现name,age成员变量,以及getXxx()/setXxx(),还有eat()等都是相同的。 如果我们后来继续定义类,举例:工人类,军人类。他们是不是也具备这些内容。 那么,我们每一次定义这样的类的时候,都要把这些重复的内容都重新定义一遍。 麻烦不?麻烦。所以我们要考虑改进? 如何改进呢? 我这样想:我能不能把这些相同的内容定义到一个独立的类中。 然后,让这多个类和这个独立的类产生一个关系,有了这个关系后, 这多个类就可以具备这个独立的类的功能。 为了实现这个效果,java就提供了一个技术类:继承。 父亲: 4个儿子 继承怎么表示呢?继承的格多是什么样子的呢? class Fu {} class Zi extends Fu { }

我们就回头修改我们的代码:

class Person { String name; int age; public Person() {} //getXxx()/setXxx() public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public void eat() { System.out.println("吃饭"); } } class Student extends Person { public Student() {} } class Teacher extends Person { public Teacher() {} }

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:面向对象_static的注意事项
下一篇:IO流_打印流的概述和特点
相关文章

 发表评论

暂时没有评论,来抢沙发吧~