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如何修改类内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!