[java] 抽象

我宁愿写bug⚠️,也不愿什么都不做 ❗️


💚哈喽!大家好!💚

❤️我是 一看就会,一写就废浩浩🔍❤️

💙让我带你编程带你飞,带你飞进垃圾堆!💙

💜 如果对你有所帮助,请给我点个赞👍!💜


键盘敲烂💥,工资过万💰



文章目录

💚 1. 抽象的概念与定义
❤️ 2. 抽象的特点
💙 3. 抽象类与普通类的异同
💜 3.1 相同点
💛 3.2 不同点


🍬附赠美图


1. 抽象的概念与定义

  • 什么时候使用抽象?

    • 当描述一个类的时候,如果一个类不应该有对象,那么该类就可以定义为抽象类,
  • 如果不能确定功能方法如何定义,功能方法应该描述为抽象方法

  • 抽象类的概念: 如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类

  • 抽象类的定义语法:

    public abstract class 类名{类体}
    
  • 抽象方法的定义语法:

    public abstract 返回值类型 方法名(形参列表);
    

2. 抽象的特点

  • 抽象类不可以被实例化,也就是不可以用new创建对象 ,但有构造方法,主要用于实例化子类调用抽象类构造方法初始化成员变量。

  • 用 abstract 修饰的类就是抽象类。抽象方法必须定义在抽象类中。但是抽象类中不一定有抽象方法

  • 方法只有声明没有实现时,该方法就是抽象方法,需要用 abstract 来修饰,抽象方法必须定义在抽象类中,该类也必须被 abstract 来修饰。

  • 抽象类通过其子类实例化,而子类需要覆盖掉抽象类中所有的抽象方法后才可以创建对象,否则该子类也是抽象类。

  • 抽象类可以有成员属性和非抽象的成员方法。

  • 抽象类可以继承普通类与抽象类

  • abstract 与其他修饰符的关系:

    • ⭐️ final 与 abstract 不能共存 ❗️

      • final:它的作用 修饰类代表不可以继承 修饰方法不可重写
      • abstract:修饰类就是用来被继承的,修饰方法就是用来被重写的。
    • ⭐️ static 与 abstract 不能共存 ❗️

      • static修饰的方法可以用类名调用,对于 abstract 修饰的方法没有具体的方法实现,所以不能直接调用,也就是说不可以与static共存。
    • ⭐️ private 与 abstract 不能共存❗️

      • private修饰的只能在本类中使用,abstract 方法是用来被子类进行重写的,有矛盾所有不能共存.

3. 抽象类与普通类的异同

3.1 相同点

  • 抽象类和普通类都是用来描述事物的,都在内部定义了成员。

3.2 不同点

  • 普通类有足够信息来描述事物,抽身象类描述事物的信息有可能不够充足
  • 普通类不能定义抽象方法,只能定义普通方法,抽象类中可以定义抽象方法,同时也可以定义普通方法
  • 普通类可以被实例化,抽象类不可以被实例化



🔮(这还不点个赞👍!评论支持🔥一下!)


🍬 最后附上美图一张

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haohao_不秃头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值