抽象类final关键字。

Posted 奔跑智者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了抽象类final关键字。相关的知识,希望对你有一定的参考价值。

final:

1.修饰符变量--->常量,运行的过程中无法重新赋值。
2.修饰符方法--->最终的方法,在子类中无法重写
3.修饰类--->最终的类,不能被继承。

 

抽象类作用:通过抽象类,可以避免子类设计的随意性。
* 通过抽象类,我们就可以做到严格限制子类的设计,使子类之间更加通用
*抽象方法:使用abstract修饰的方法,抽象方法没有方法体.
*抽象类:使用abstract修饰的类,抽象类中可以包含抽象方法。非抽象类不能包含抽象方法。
*包含抽象方法的类一定是抽象类, 抽象类中可以没有抽象方法。
*抽象类中可以包含构造方法,抽象类不能实例化,不能使用new关键字创建抽象类的对象.(抽象类不能new)
*Person p = new Person();//错误
*抽象类天生就是为继承设计。
*抽象类的子类必须重写抽象类中的抽象方法或者子类也是抽象类。
*/

=======================================================================================================

例:


public abstract class Person {
String name;
int age;
public Person(){

}

public void intro(){
System.out.println("姓名:"+name);
System.out.println("年龄:"+age);
}
//吃的方法
public abstract void eating();

}

 

*
* 子类继承了抽象类,就必须重写(实现)父类中抽象方法。
*
*/
public class Chinese extends Person {
public Chinese() {
}
public Chinese(String name,int age){
this.name=name;
this.age=age;
}

// 重写父类中抽象方法
@Override
public void eating() {
System.out.println("我是中国人,我喜欢吃饺子!");
}

}

 

ublic class American extends Person {
public American() {
}

public American(String name,int age){
this.name=name;
this.age=age;
}
=======================================================================================================
@Override
public void eating() {
System.out.println("我是美国佬,我喜欢吃牛排!");
}

public static void main(String[] args) {
Person p = new Chinese("小三",18);
p.intro();
p.eating();

Person p2 = new American("rose",20);
p2.intro();
p2.eating();
}
}

以上是关于抽象类final关键字。的主要内容,如果未能解决你的问题,请参考以下文章

JAVA之旅——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展

java关键字final和抽象类

java关键字final和抽象类

java关键字final和抽象类

java关键字final和抽象类

java 抽象类&接口