继承概念
继承:就是子类继承父类的属性和行为,使得子类对象具有与父类相同的属性、相同的行为。子类可以直接访问父类中的非私有的属性和行为。
定义父类:
package com.yh;
public class Animal {
String color;
String brand;
int age = 5;
private char sex;
public void eat() {
System.out.println(color+brand+"吃饭饭");
}
public void sleep() {
System.out.println(color+brand+"睡觉觉");
}
}
定义子类1:
package com.yh;
public class Dog extends Animal {
public static void main(String[] args) {
Dog d = new Dog();
d.color="黄色";
d.brand="泰迪";
d.eat();
d.sleep();
}
}
运行结果:
定义子类2:
package com.yh;
//继承
public class Cat extends Animal {
int num;
int age = 2;
public void catchMouse(){
int age = 3;
System.out.println(age);//3
System.out.println(this.age);//2
System.out.println(super.age);//5
System.out.println("逮老鼠");
}
public void eat(){
super.eat();//继承父类
//方法重写
//前提:继承
// 返回值 方法名 参数列表完全一致
// 修饰符权限可以扩大
System.out.println("想吃猫条");
System.out.println("想吃鱼罐头");
}
public static void main(String[] args) {
Cat c = new Cat();
//不能调用,sex为父类私有 c.sex='男';
c.color="白色";
c.brand="布偶猫";
System.out.println(c.age);
c.eat();
c.sleep();
c.catchMouse();
}
}
运行结果: