java 中的抽象类

红太狼 2022-08-22 00:15 316阅读 0赞

在自上而下的继承层次结构中,位于上层的类更具有通用性,甚至可能更加抽象。从某种角度看,祖先类更加通用,它只包含一些最基本的成员,人们只将它作为派生其他类的基类,而不会用来创建对象。甚至,可以只给出方法的定义而不实现,由子类根据具体需求来具体实现。
这种只给出方法定义而不具体实现的方法被称为抽象方法abstract,抽象方法是没有方法体的(没有{}),在代码的表达上就是没有“{}”。包含一个或多个抽象方法的类也必须被声明为抽象类。使用 abstract 修饰符来表示抽象方法和抽象类。抽象类除了包含抽象方法外,还可以包含具体的变量和具体的方法。类即使不包含抽象方法,也可以被声明为抽象类,防止被实例化。抽象类不能被实例化,抽象方法必须在子类中被实现。
示例代码:

  1. package 抽象类;
  2. public class abstractclass {
  3. public static void main(String[] args) {
  4. Teacher t = new Teacher();
  5. t.setName("liming");
  6. t.work();
  7. Student s = new Student();
  8. s.setName("jim");
  9. s.work();
  10. }
  11. }
  12. //定义一个抽象类
  13. abstract class People{
  14. private String name;
  15. //使用shift + alt + s 快速生成get、set方法(右击source)
  16. public String getName() {
  17. return name;
  18. }
  19. public void setName(String name) {
  20. this.name = name;
  21. }
  22. //定义一个抽象方法
  23. public abstract void work();
  24. }
  25. class Teacher extends People{
  26. public void work(){
  27. System.out.println("I'm teacher,name is " + this.getName() + " 正在授课。");
  28. }
  29. }
  30. class Student extends People{
  31. public void work(){
  32. System.out.println("I'm student, name is " + this.getName() + " 正在学习。");
  33. }
  34. }

发表评论

表情:
评论列表 (有 0 条评论,316人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JAVA抽象

    一、介绍 Java中提供了两种类:具体类和抽象类。 1、abstract意思为“抽象的”,用abstract关键字来修饰一个类时,这个类就叫做抽象类。 语法:访问修饰

    相关 Java抽象

    一、抽象类定义 Java语言提供了两种类:具体类和抽象类 在Java中,abstract是抽象的意思,可以修饰类,成员方法 abstract修饰类,就是抽象类,abs

    相关 Java抽象方法抽象

    1、 普通方法和抽象方法的区别 (1)在Java中,当一个类的方法被abstract关键字修饰时,该方法称为抽象方法。 (2)抽象方法所在的类必须定义为抽象类。 (3

    相关 java 抽象

    在自上而下的继承层次结构中,位于上层的类更具有通用性,甚至可能更加抽象。从某种角度看,祖先类更加通用,它只包含一些最基本的成员,人们只将它作为派生其他类的基类,而不会用来创建对

    相关 java抽象抽象方法

    使用关键字abstract定义的类叫做抽象类,在抽象类中可以包含抽象方法也可以不包含抽象方法,这意味着你在抽象类里边可以有具体的方法(有实现体)也可以有抽象方法(没有实现,没有

    相关 Java抽象

    抽象类的基本概念 普通类是一个完善的功能类,可以直接产生实例化对象,并且在普通类中可以包含有构造方法、普通方法、static方法、常量和变量等内容。而抽象类是指在普通类的

    相关 java抽象

    java中的抽象类 1.什么是抽象类? 类--通过class关键字创建的java元素。描述具有公共性质的一组事物的自定义复合数据类型。 /\\ \ 普通的java