抽象类

  • 1、语法定义:
    抽象类前使用abstract关键字修饰,则该类为抽象类。
  • 2、应用场景:
    a.某个父类只知道其子类的方法,但不知道子类是如何实现这些方法的。
    b.从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类的模版,从而避免了子类设计的随意性。
  • 3、作用
    限制规定了子类必须实现某些方法,但不关注实现细节。
  • 4、使用规则
    a.abstract定义抽象类
    b.abstract定义抽象方法,只有声明,不需要实现
    c.包含抽象方法的类是抽象类
    d.抽象类中可以包含普通的方法,也可以没有抽象方法
    e.抽象类不能直接创建,可以定义引用变量

Telephone.java(抽象类)

package com.imooc;

public abstract class Telephone {

    //抽象类中只定义方法,而不需要实现方法
    public abstract void call();
    public abstract void message();

}

SmartPhone.java(抽象类的子类)
子类自动重写父类的方法,然后实现具体方法

package com.imooc;

public class SmartPhone extends Telephone {

    @Override
    public void call() {
        // TODO Auto-generated method stub

        System.out.println("通过语音打电话");
    }

    @Override
    public void message() {
        // TODO Auto-generated method stub

        System.out.println("通过语音来发短信");
    }

}

Initail.java(方法应用类)

package com.imooc;

public class Initail {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        //抽象类的父类引用
        Telephone tel2 = new SmartPhone();
        tel2.call();
        tel2.message();
    }

}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容