《java入门第一季》之面向对象(重头戏继承来了)

时间:2023-03-08 17:23:12

java特性封装、继承、多态。之前对封装做了简单描述(见http://blog.****.net/qq_32059827/article/details/51312116),今天分析另一个特性继承性:

首先这一片只是对继承概念做一个分析,具体的d代码描述在下一篇开始更新。

首先我来写两个代码:
//定义学生类
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("吃饭");
}
}
我们观察上面两个代码:
发现name,age成员变量,以及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(){}
}

这就是继承,和生活中的继承差不多。就是儿子孙子要继承使用父亲或者祖宗的东西。相信什么是继承,一目了然。