继承介绍
继承的关键字为extends
需要父类 、子类 、测试类,如下介绍(父类可以被子类继承)当然我们的子类也可以成为父类,那就是子子类调用我们之前的子类,这个地方比较绕口,多写写就明白了。
父类
package com.oop;
public class Persons {
private String name;//private是私有的意思
private int age;
private String sex;
String name1="22";
//将上面的变量封装成为getName()和setName()...这样的方法,方便我们操作某个变量
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age>0&&age<100){//set里面就可对某个变量进行操作
this.age = age;
}else {
this.age=3;
}
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
子类1
package com.oop;
public class Student extends Persons{
String name;
public Student() {
super();
}
public String name(String name){
System.out.println(this.name = "11");
System.out.println(super.name1);
return name;
}
}
子类2
package com.oop;
public class Teacher extends Persons{
}
测试类
package com.oop;
public class Aplication {
public static void main(String[] args) {
Student student = new Student();//子类的引用指向了子类
student.setAge(10);//子类也可以用父类中的方法,但是父类不能用子类的方法
System.out.println(student.getAge());
}
}
注意!!!
子类可以用父类的方法,但是父类不能用子类的方法
子类中一般会跟父类中的方法相同,那么在子类中会重写这个相同的方法,这个方法的结果和子类中的结果一致,父类的方法会被覆盖。
java中的重写(override)
父类
package com.oop;
public class Persons {
public void run(){//父类方法与子类方法相同
}
}
子类
package com.oop;
public class Student extends Persons{
@Override//重写标志
public void run() {//子类方法与父类方法相同
}
}
子类中一般会跟父类中的方法相同,那么在子类中会重写这个相同的方法,这个方法的结果和子类中的结果一致,父类的方法会被覆盖。