继承:
1.Java语言中不支持多重继承,所以一个类只能有一个直接父类
2.Java语言中有一个名为java.lang.Object的特殊类,所有的类都是直接或间接地继承该类而得到的
3.格式为:class SubClass extends SuperClass {
}
覆盖
4.覆盖是指在子类中定义名称、参数个数与类型均与父类中完全相同的方 法,用以重写父类中同名方法的功能。
所做练习:
定义宠物类( Pet ),猫类(Cat)和狗类(Dog)
1、宠物都有属性姓名(name)和年龄(age)
2、宠物都有吃(eat)、喝(drink)、叫(shout)的方法
3、猫有爬树( climbTree )的方法
4、狗有警戒( police)的方法
public class Pet {
public String name;
public int age;
public void eat(){
System.out.println(name+"会吃");
}
public void drink(){
System.out.println(name+"会喝");
}
public void shout(){
System.out.println(name+"会叫");
}
}
public class Cat extends Pet{
public void climbTree(){
System.out.println(super.name+"会爬树");
}
}
public class Dog extends Pet{
public void police(){
System.out.println(super.name+"会警戒");
}
}
有关java抽象类
public abstract class Shape {
abstract public void draw();
abstract void calcArea();
public double getArea(){
return area;
}
protected double area;
}
1 抽象类不能直接实例化对象,抽象类必须有子类,抽象类不能自己实例化对象,要通过子类对象向上转型为其实例化
2 抽象方法不能是 private
3 抽象方法不能被fifinal和static修饰
4 抽象类必须被继承,并且继承后子类要重写父类中的抽象方法,否则子类也是抽象类,必须要使用 abstract 修饰