abstract 关键字的使用

本文详细解读了abstract关键字在Java中的使用,包括其修饰类(抽象类)和方法(抽象方法)的概念,实例化规则,以及注意事项。重点介绍了抽象类的创建目的和抽象方法的实现策略,以及在模板设计模式中的实际应用。
摘要由CSDN通过智能技术生成

abstract 关键字的使用
1.abstract:抽象的
2.abstract:可以用来修饰的结构:类,方法
3.abstract:修饰类:抽象类
–此类不能实例化
–抽象类中一定有构造器,便于子类实例化的时调用(涉及:子类对象实例化的全过程)
–开发中,都会提供抽象类的子类,让子类对象实例化,完成相关的操作
4.abstract修饰方法:抽象方法
–抽象方法只有方法的声明,没有方法体
–包含抽象方法的类,一定是一个抽象类。反之,抽象类中可以没有抽象方法的
–若子类重写了父类中所有的抽象方法后,此子类方可以进行实例化
–若子类没有重写父类中的所有抽象方法,则此类也是一个抽象类
5.abstract使用的注意点
–abstract不能用来修饰:属性,构造器等结构
如果可以修饰属性的话,那这个属性还要不要赋值的啊,这不是没有意义的么
如果可以修饰构造器的话,那么构造都没有方法体,怎么进行对类的初始化。还要去明确构造器重写。你见过构造器重写吗?
–abstract不能修饰私有方法,静态方法,final的方法,final的类
假设可以修饰私有方法,你见过私有方法可以被子类重写的么。如果可以,那个private权限符还有意义么。这不是矛盾的么
假设可以修饰静态方法,大家都知道静态方法是随着类加载的时候就已经加到方法区的啦,而用abstract声明的方法是没有方法体的,将一个没有方法体的方法加载到方法区,这样有什么意义呢?再说了 你们见过没有方法体的静态方法么。
假设可以修饰final的方法,final修饰的方法不能被重写,而你abstract修饰的方法是明确子类要重写该方法的。他喵的这不是矛盾了么,再加上连方法体都没有了,人家final都是是最终的方法啦。
匿名子类
在这里插入图片描述

模板设计模式的体会
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值