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

53 篇文章 0 订阅
首先写两个代码:
//定义学生类
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() {}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值