抽象类和接口

抽象类和接口

抽象类简介

  • 类是对现实事物的抽象,抽象类是对类的抽象,即抽象的抽象(定义规范)

  • 抽象类不能直接实例化,需要依靠其子类去实现它

  • 子类继承抽象类必须重写其中的所有抽象方法(规范)

  • 抽象类中可以有普通的方法

  • 抽象方法必须在抽象类中

 

接口简介

  • 接口只有规范

  • 接口的本质是契约

  • 是对对象的抽象,OO的精髓

  • 接口中的所有方法定义默认都是 public abstract

  • 接口中定义的所有属性都默认是 public static final,即静态常量

  • 接口不能被实例化,接口中没有构造方法

  • 一个类使用implements关键字可以实现多个接口

// 抽象类 通过继承 extends 只能单继承
// 类实现接口 implements 接口 可以实现多个接口
// 实现了接口的类,需要重写接口中的方法

// 侧面实现了多继承
public class UserServiceImpl implements UserService,TimerService {
   @Override
   public void add(String name) {

  }

   @Override
   public void delete(String name) {

  }

   @Override
   public void edit(String name) {

  }

   @Override
   public void query(String name) {

  }

   @Override
   public void time() {

  }
}

 

抽象类和接口的区别

  1. 定义方式不同,abstract 定义抽象类,interface定义接口

  2. 子类继承抽象类使用 extends,实现接口使用implements关键字

  3. 抽象类中可以有非抽象的方法,私有的属性

  4. 接口中定义的所有方法均为public abstract,属性均为public static final,即静态常量

posted @ 2021-04-09 10:29  木木彡坚持  阅读(77)  评论(0)    收藏  举报