abstract的应用
在java中abstract关键字用于润饰类和办法
abstract class person{//润饰类,该类为抽象类 String name; int age; public abstract void eat() ;//润饰办法,该办法为形象办法 public abstract void sleep(); public void run() { System.out.println("跑步"); }}
被abstract润饰的特点
1、抽象类
1)抽象类与一般类的不通电在于无奈进行实例化,其余与一般类无异。
2)因为抽象类不能实例化对象,所以抽象类必须被继承,能力被应用。然而如果抽象类中有形象办法,子类中要对形象父类中的所有形象办法进行重写并赋予办法体,子类能力成为能够实例化的一般类;不然子类也只能被abstract润饰成为形象子类,无奈实例化。
2、形象办法
1)形象办法没有办法体,
2)领有形象办法的类肯定是抽象类,但抽象类不肯定领有形象办法
3)在子类继承形象父类时,形象办法必须全副被赋予办法体重写能力实例化对象。
abstract关键字的利用场景总结
形象办法只是申明了一个办法,但不提供具体怎么实现,具体实现由继承的子类负责;而领有一个或者多个形象办法的类就是抽象类。
//设计抽象类规范abstract class person{ String name; int age; int number; public abstract void sum();//这里规定要用加法 public abstract void count();//这里规定要数数 }//依据形象办法的规范填充内容class stu extends person{ public void sum() {//重写的办法体要填充上加法的具体方法 number = 1; int quantity; quantity = number+number; System.out.println(quantity); } public void count() {//重写的办法体要填充上数数的具体方法 int quantity; quantity = age+age; System.out.println(quantity); }}
abstract关键字的应用留神点
1、abstract不能润饰公有办法、静态方法、final的办法;
2、abstract不能润饰属性、结构器,除了办法和类,都不能润饰;