step1:先定义一个跳高(接口)
package jiekou;
public interface Jumpping {
public abstract void jump();
}
step2:再定义一个Animal抽象类(父类)
package jiekou;
public class Animal {
private String name;
private int age;
public Animal() {
}
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void eat(){
System.out.println("吃饭");
}
}
step3:定义一个猫类(子类)继承父类并完成接口
package jiekou;
public class Cat extends Animal implements Jumpping{
public Cat() { //无参
}
public Cat(String name, int age) { //带参
super(name, age);
}
public void eat(){
System.out.println("猫吃鱼");
}
public void jump(){
System.out.println("猫跳高");
}
}
step4:定义一个狗类(子类)继承父类并完成接口
package jiekou;
public class Dog extends Animal implements Jumpping{
public Dog() { //无参 用alt+fn+insert全选
}
public Dog(String name, int age) { //带参 用alt+fn+insert全选
super(name, age);
}
public void eat(){
System.out.println("狗吃骨头");
}
public void jump(){
System.out.println("狗跳高");
}
}
step5:定义测试类(主函数)
package jiekou;
//测试类
public class AnimalDemo {
public static void main(String[] args) {
//创建对象,调用方法(创建接口对象)
// 猫类
Jumpping j = new Cat();
j.jump();
System.out.println("-------------");
//无参
Animal a = new Cat();
a.setName("加菲");
a.setAge(3);
System.out.println(a.getName() + "," + a.getAge());
a.eat();
System.out.println("-------------");
//a.jump();//报错,不可以调用接口里的方法
//带参
a = new Cat("肥波", 2);
System.out.println(a.getName() + "," + a.getAge());
a.eat();
//a.jump();//报错,不可以调用接口里的方法
System.out.println("-------------");
//常用(有抽象类,有接口时,用这种方法)
Cat c = new Cat();
c.setName("二傻子");
c.setAge(3);
System.out.println(c.getName() + "," + c.getAge());
c.eat();
c.jump();//可以调用接口中的方法
System.out.println("-------------");
//狗类
Jumpping j2 = new Dog();
j2.jump();
System.out.println("-------------");
//常用(有抽象类,有接口时,用这种方法)
Dog d = new Dog();
d.setName("比熊");
d.setAge(6);
System.out.println(d.getName() + "," + d.getAge());
d.eat();
d.jump();
System.out.println("-------------");
}
}