龙空技术网

abstract抽象类和抽象方法

虚云幻仙 341

前言:

此时朋友们对“抽象类的方法可以直接调用吗对吗”大致比较关切,姐妹们都想要分析一些“抽象类的方法可以直接调用吗对吗”的相关内容。那么小编在网摘上网罗了一些有关“抽象类的方法可以直接调用吗对吗””的相关文章,希望兄弟们能喜欢,小伙伴们一起来了解一下吧!

/**

* 测试抽象abstract类和抽象方法

* 抽象类是一种规范 通过空的抽象方法规范了子类必须要实现的功能

* 抽象类只能用来被继承

* 每个子类必须要重写抽象方法 实现抽象类规定的这些功能才能被创建

*/

public abstract class TestAbstract {

//抽象类用abstract修饰 类中含有抽象方法时该类必须定义成抽象类

public abstract void turnOn();

//抽象方法不加方法体{} 用abstract修饰

//这条抽象方法规定:设备必须要有启动方法 每个子类必须实现启动方法才能创建

public abstract void turnOff();

//这条抽象方法规定:设备必须要有关闭方法 每个子类必须实现关闭方法

int price;

//抽象类内可以有普通属性和普通方法

String name;

public void print(){

System.out.println(name+price);

}

public TestAbstract(int price, String name) {

//抽象类的构造方法不能用来new对象(实例化) 可以被子类调用super

this.price = price;

this.name = name;

}

public TestAbstract(){}

//无参构造方法和有参构造方法构成重载overload

}

class Radio extends TestAbstract{

//定义class radio继承TestAbstract 时就会报错 要求实现方法

@Override

public void turnOn() {

System.out.println("Radio.turnOn");

}

//每一个子类都需要重写父类的抽象方法 实现方法后才可以创建

@Override

public void turnOff() {

System.out.println("Radio.turnOff");

}

public Radio(int price,String name){

super(price, name);

//调用抽象类的构造方法

}

}

标签: #抽象类的方法可以直接调用吗对吗 #继承abstract类