java中abstract修改类的实例方法

 更新时间:2020年12月27日 16:25:34   作者:小妮浅浅  
在本篇文章里小编给各位分享了一篇关于java中abstract修改类的实例方法,有需要的朋友们可以学习下。

abstract是一种修饰类,经过修改的类会变成抽象类。除了类之外还可以修改方法,考虑到类的模块是小伙伴们常接触的,今天来小编带大家一起找寻使用abstract修改类的方法。这里需要我们先从abstract丁酉、特点、方法、注释进行学习,然后在实例中体会修改类的用法。

1.abstract定义

abstract关键字可以修改类或方法。

abstract 类可以扩展(增加子类),但不能直接实例化。

abstract 方法不在声明它的类中实现,但必须在某个子类中重写。

2.特点

可以声明引用不能创建对象

3.方法

abstract void eat( );

4.注释

采用 abstract 方法的类本来就是抽象类,并且必须声明为 abstract。

abstract 类不能实例化。

仅当 abstract 类的子类实现其超类的所有 abstract 方法时,才能实例化 abstract 类的子类。这种类称为具体类,以区别于 abstract 类 。

如果 abstract 类的子类没有实现其超类的所有 abstract 方法,该子类也是 abstract 类。

abstract 关键字不能应用于 static、private 或 final 方法,因为这些方法不能被重写,因此,不能在子类中实现。

final 类的方法都不能是 abstract,因为 final 类不能有子类。

5.实例

public abstract class Animal {、
public abstract void cry();
public void run(){
System.out.println(“跑的方法……”);
}
}

知识点扩展:

abstract修饰的类叫做抽象类

格式:abstract class 类名{}

注意

1、如果类中含有抽象方法,则要求该类必须也是抽象类;

但是抽象类可以不包含抽象方法

2、抽象类的子类:

1)、抽象类:如果不想重写抽象父类的方法可以将该类也声明为抽象类

2)、具体类:要求必须重写抽象类中的所有的抽象方法

3)、如果类被声明抽象类,不允许通过new来实例化

4)、抽象类可以包含哪些内容?

成员属性:变量可以 常量可以

成员方法:抽象方法可以 非抽象方法可以

构造方法:可以 也支持构造方法重载

提供给子类使用

5)、抽象类中为什么既提供了抽象方法也提供非抽象方法?

抽象方法:强制要求具体子类必须重写抽象方法

非抽象方法:子类可以直接使用父类的非抽象方法--提高代码的复用性

6)、抽象类是否可以体现多态?

抽象方法可以重载;抽象方法的意义子类重写该方法;

向上造型:子类对象赋值给抽象类的引用

编译看左边 运行看右边

7)、如果抽象类一个抽象方法都没有,该抽象类有什么意义?

不允许创建类的对象,只能通过子类继承该类

8)、private+abstract能否一起使用?--不可以

9)、final+abstract能否一起使用?---不可以 冲突

10)、static+abstract能否一起使用?--不可以

冲突 没有意义

到此这篇关于java中abstract修改类的实例方法的文章就介绍到这了,更多相关java基础之abstract如何修改类内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java 精炼解读方法的定义与使用

    Java 精炼解读方法的定义与使用

    Java语言中的“方法”(Method)在其他语言当中也可能被称为“函数”(Function)。对于一些复杂的代码逻辑,如果希望重复使用这些代码,并且做到“随时任意使用”,那么就可以将这些代码放在一个大括号“{}”当中,并且起一个名字。使用的时候,直接找到名字调用即可
    2022-03-03
  • jstack配合top命令分析CPU飙高、程序死锁问题

    jstack配合top命令分析CPU飙高、程序死锁问题

    记得前段时间,同事说他们测试环境的服务器cpu使用率一直处于100%,本地又没有什么接口调用,为什么会这样?cpu使用率居高不下,自然是有某些线程一直占用着cpu资源,那又如何查看占用cpu较高的线程
    2021-09-09
  • MyBatis 实现数据的批量新增和删除的操作

    MyBatis 实现数据的批量新增和删除的操作

    这篇文章主要介绍了MyBatis 实现数据的批量新增和删除的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • 关于重写equals()方法和hashCode()方法及其简单的应用

    关于重写equals()方法和hashCode()方法及其简单的应用

    这篇文章主要介绍了关于重写equals()方法和hashCode()方法及其简单的应用,网上的知识有些可能是错误的,关于 equals() 方法的理解,大家讨论不一样,需要的朋友可以参考下
    2023-04-04
  • springbean的八种加载方式汇总

    springbean的八种加载方式汇总

    这篇文章主要介绍了springbean的八种加载方式,一种是XML方式声明bean,使用@Component及其衍生注解@Controller 、@Service、@Repository定义bean,还有其他方法,本文给大家介绍的非常详细,需要的朋友可以参考下
    2022-10-10
  • 浅谈mybatis mapper.xml文件中$和#的区别

    浅谈mybatis mapper.xml文件中$和#的区别

    这篇文章主要介绍了浅谈mybatis mapper.xml文件中$和#的区别,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • mybatis中的缓存机制

    mybatis中的缓存机制

    这篇文章主要介绍了mybatis中的缓存机制用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Spring多个数据源配置详解

    Spring多个数据源配置详解

    在实际场景中,会有需要配置多个数据源的场景,本文就介绍一下如何配置Spring多数据源,具有一定的参考价值,感兴趣的可以了解一下
    2021-08-08
  • RabbitMQ实现延时消息的两种方法实战教程

    RabbitMQ实现延时消息的两种方法实战教程

    这篇文章主要介绍了RabbitMQ实现延时消息的两种方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • springboot控制层图片验证码生成

    springboot控制层图片验证码生成

    这篇文章主要为大家详细介绍了springboot控制层图片验证码生成,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02

最新评论