Java面向对象编程-抽象类和接口

抽象类和接口

抽象类

  • abstract修饰符可以用来修饰方法也可以修饰类,如果修饰方法,那么方法就是抽象方法;如果修饰类,那么该类就是抽象类。

  • 抽象类中可以没有抽象方法,但是有抽象方法的类一定要声明为抽象类。

  • 抽象类,不能使用new关键字来创建对象,它是用来让子类继承的。

  • 抽象方法,只有方法的声明,没有方法的实现(没有方法体),它是用来让子类实现的。

  • 子类继承抽象类,那么就必须要实现抽象类没有实现的抽象方法,否则该子类也要声明为抽象类。

  • 有构造器

  • 抽象类除了包含抽象方法外,还可以包含具体的变量和具体的方法。类即使不包含抽象方法,也可以被声明为抽象类,防止被实例化。
  • 构造函数和静态函数以及final修饰的函数不能使用abstract修饰符。
  • abstract 关键字和哪些关键字不能共存:
    • static
    • private: 抽象类中的私有的抽象方法,不被子类所知,就无法被重写。而抽象方法出现的就是需要被重写。
    • final:被final修饰的类不能有子类。而被abstract修饰的类一定是一个父类。
  •  

接口

  • 普通类:只有具体实现

  • 抽象类:具体实现和规范(抽象方法)都有

  • 接口:只有规范

  • 接口就是规范,定义的是一组规则

  • 接口的本质是契约

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

  • 接口都需要实现类

声明类的关键字是class,声明接口的关键字是interface

 

  • 实现了接口的类,必须重写接口中的方法

 

  • 利用接口实现多继承

 

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

  • 接口中的:常量 public static final;方法 public abstract

  • 接口的作用是约束,定义一些方法,让不同的人实现

posted @   gm学习日记  阅读(45)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示