Java基础语法:abstract修饰符

Java基础语法:abstract修饰符

一、简介

描述:

'abstract'修饰符可以用来修饰方法,也可以修饰类。

如果修饰方法,那么该方法就是抽象方法;如果修饰类,那么该类就是抽象类。

抽象类和抽象方法起到一个框架作用,方便后期扩展的重写和调用。

注意:

抽象类中可以没有抽象方法,但是有抽象方法的类一定要声明为抽象类。

示例:

/* 抽象类的命名规范为以Base或Abstract开头 */

public abstract class BasePerson {

/* 抽象方法,没有方法实现 */

public abstract void doSomething();

public void say() {

System.out.println("person");

}

}

二、抽象方法

描述:

声明方法的时候,加上'abstract'修饰符,并且去掉方法的大括号,同时结尾加上分号,该方法就是抽象方法。

抽象方法只有方法的声明,没有方法的实现(没有方法体),它是用来让子类实现的。

作用:

抽象方法是为了程序的可扩展性,重写抽象方法可实现方法同名但又非同目的的要求。

定义抽象方法,在需要时继承后重写调用,可以省去很多代码。

三、抽象类

描述:

声明类的同时,加上'abstract'修饰符就是抽象类。

抽象类不能使用'new'关键字来创建对象,它是用来让子类继承的。

注意:

子类继承抽象类后,需要实现抽象类中没有实现的抽象方法,否则这个子类也要声明为抽象类。

抽象类不能被实例化,但有构造器,会在子类实例化时调用,是用来实现多态中的共同点构造,一般不建议使用。

示例:

public abstract class BasePerson {

public abstract void doSomething();

}

/* 子类继承抽象类后,需要实现抽象类中没有实现的抽象方法。 */

class Student extends BasePerson {

public void doSomething() {

System.out.println("doSomething");

}

}

相关推荐

龙珠传奇之无间道

龙珠传奇之无间道

08-13 👁️ 5402
Win系统 - 微信居然自带修复工具?快来试试
Windows重装系统要多久?影响因素与时间估算详解