Interface与抽象类的关系

抽象类与接口

[接口比抽象类更加抽象​]  接口大多用来实现某一功能

 

 //Interface.java  接口
 package JiekouTEST;
 
 public interface Interface {
 
     public abstract void jumpping();  //不跟方法体,不能被实例化
 }
 
 
 //Animal.java 抽象类
 package JiekouTEST;
 
 public abstract class Animal implements Interface {  //非抽象类中存在抽象类会报错
     String name;
     int age;
 
 
     @Override
     public void jumpping() {
 
    }
 
     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 abstract void eat();
 }
 
 //Cat.java
 package JiekouTEST;
 
 public class Cat extends Animal implements Interface{
     //继承抽象类和抽象接口,那么需要重写eat方法和jumping方法
  //父类已有构造方法,无需再次构造。
 //   public Cat() {
 //   }
 
 //   public Cat(String name, int age) {
 //       super(name, age);
 //   }
 //
 
     @Override
     public void eat() {
         System.out.print("加菲猫在吃老鼠!!!");
    }
 
     @Override
     public void jumpping() {
         System.out.print("加菲猫胖胖!!!跳不高!!!");
    }
 
     public void show(){
         System.out.print(name +" " + age);
    }
 
 
 }
 
 // 测试类
 package JiekouTEST;
 
 public class AnimalDemo {
     public static void main(String[] args) {
         Cat c = new Cat();
         c.setAge(5);
         c.setName("加菲猫");
         c.eat();
         c.jumpping();
    }
 }
 

 

posted @ 2022-03-18 20:05  你不是耶稣  阅读(30)  评论(0)    收藏  举报