抽象类

一、抽象类的概念

抽象方法是只声明而未实现的方法;

  • 1、抽象类和抽象方法都必须用abstract关键字来修饰;
  • 2、抽象类不能实例化,所以 不能直接用new关键字产生对象;
  • 3、抽象方法只需声明,不需要实现;
  • 4、含有抽象方法的类必须被声明为抽象类,抽象类的子类必须覆写所有的方法后才能被实例化,否则这个子类还是抽象类
    语法:
abstract class 类名称
{
声明数据成员
访问权限 返回值的数据类型 方法名称(参数...)
{
     //定义一般方法
}
abstract 返回值的数据类型 方法名称(参数)
}

例,代码:

abstract class Person {
    String name;
    int age;
    String occupation;
    public abstract String talk();   //声明一个抽象方法talk()
}
class Student extends Person//Student类继承自Person
{
    public Student(String name,int age,String occupation) {
        this.name = name;
        this.age = age;
        this.occupation = occupation;
    }
    public String talk() {      //覆写抽象方法talk()
       return "学生--->:姓名:"+this.name+",年龄:"+this.age+",职业:"+this.occupation+"!";
    }
}
class Worker extends Person      //Worker类继承自Person类
{
    public Worker(String name,int age,String occupation)
    {
        this.name = name;
        this.age = age;
        this.occupation = occupation;
    }
    public String talk()     //覆写抽象方法talk()
    {
        return "工人--->:姓名:"+this.name+",年龄:"+this.age+",职业:"+this.occupation+"!";
    }
}
class AbstractClassDemo
{
    public static void main(String[] args)
    {
        Student s = new Student("张三",20,"学生");      //创建Student类对象s
        Worker w = new Worker("李四",30,"工人");        //创建Worker类对象w
        System.out.println(s.talk());
        System.out.println(s.talk());
    }
}
代码实现
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 先来看看抽象类和接口的定义: 抽象类(abstract class): 使用abstract修饰符修饰的类。官方点...
    IT废柴阅读 54,041评论 7 45
  • We believe that writing is about content, about what you ...
    hongXkeX阅读 4,472评论 1 1
  • 你很清楚的知道什么时候用抽象类,什么时候用接口么?p.s. 多文字预警! 1 抽象类和接口简介 1.1 抽象类 ...
    Sharember阅读 6,915评论 9 55
  • 爱,原来是一场自我教育。 ——木心 很多人的失落,是违背了自己少年时的立志。自认为成熟、自认为练达、自认为精明,从...
    蘩莉阅读 3,308评论 7 7
  • 休息了一天之后,身体终于恢复了状态。 清晨的05:45分闹钟准时响起,中间断了一天之后,脑袋中做着起与不起的思想斗...
    一个景天阅读 1,547评论 0 0