Java类的继承主要通过extends关键字来完成的。
一旦完成继承后,子类将获得父类的成员属性和成员的方法。·
例如我们创建一个Animal作为父类,在创建一个dog作为子类,让子类继承(mood):
public class Animal {
protected int mood;(protected: 受保护的)
public void setMood(int mood) {this.mood = mood;
}
public String sayHello(){
return("hello");
}
public String sayHello(int mood){
this.setMood(mood);
switch(this.mood){
case 1:
return("不高兴的叫");//不高兴时打招呼的方式是
case 2:
return("高兴的叫");//高兴时打招呼的方式是
default:
return("hello");
}
}
public Animal() {
//System.out.println("这是动物的无参构造方法");
}
public Animal(boolean mammal, boolean canivorous, int mood) {
System.out.println("这是动物的有参构造方法");
this.mammal = mammal;
this.canivorous = canivorous;
this.mood = mood;
}}
父类建好之后,子类就可以无限使用,
public class Dog extends Animal {
public Dog(){
this.mood=1;
}
public Dog( int mood) {
super(mood);//必须定义否侧会调无参方法
this.mood=1;}
@Override
//重写
(方法重写判断:
(1): 访问修饰符权限一定要大于被重写的方法。 (当被重写的方法被私有(pri vate) 时无法重写)
(2): 当被重写的方法一旦被final时也无法重写,如果编译会报错。
(3): 返回值类型必须相同。
(4): 参数列表必须与被重写的方法完全相同。)
public String sayHello() {// TODO Auto-generated method stub
return super.sayHello();
}
@Override
public String sayHello(int mood) {
// TODO Auto-generated method stub
return super.sayHello(mood);
}
}