继承就是允许子类拥有父类的属性和行为
- 优点:
- 提高代码的复用性
- 缺点:
- 耦合度更高了
- 2.继承语法
- class 子类名 sxtends 父类{
- }
1.子类继承父类以后,父类声明的所有属性和方法子类都可以获取到
* 2.子类除了通过继承获取父类的属性和方法外,还可以定义自己独有的属性和方法
* 3.Java继承是单继承,一个子类只能继承一个父类,但是一个父类可以有多个子类
person类
public class Person {
private String name;//姓名
private int id;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public void eat(){
System.out.println("吃饭");
}
public void sleep(){
System.out.println("睡觉");
}
public void info(){
System.out.println("姓名:"+name+",性别:"+sex+",id:"+id);
}
}
学生类
public class Student extends Person{
//学生类
private String schoolName;
public String getSchoolName() {
return schoolName;
}
public void setSchoolName(String schoolName) {
this.schoolName = schoolName;
}
public void eat(){
System.out.println("我是一名学生,我要吃一些营养的东西");
}
}
Worker类
public class Worker extends Person{
}
小学生类
public class SchoolChild extends Student{
public void game(){
System.out.println("你是一个小学生,不要玩游戏");
}
}
测试类
public class TestPerson {
public static void main(String[] args) {
//创建一个人类
Person p=new Person();
p.eat();
//创建一个学生类
Student stu=new Student();
stu.eat();
stu.getSchoolName();
//创建一个工人类
Worker w=new Worker();
w.eat();
//创建小学生类
SchoolChild sc=new SchoolChild();
sc.game();
sc.eat();
}
}