《java入门第一季》之面向对象(重头戏继承来了)
java特性封装、继承、多态。之前对封装做了简单描述(见http://blog.csdn.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(){} }
这就是继承,和生活中的继承差不多。就是儿子孙子要继承使用父亲或者祖宗的东西。相信什么是继承,一目了然。