JAVA抽象类
A.抽象类的简单概述:
抽象类是指在普通类的结构里面增加抽象方法的组成部分。在Java中一个没有方法体的方法被定义为抽象方法,如果一个类中有抽象方法,那么这个类必须定义为抽象类。
B.抽象类的特点:
a.抽象类和抽象方法必须有"abstract"关键字修饰。
public abstract class 类名 { }
public abstract void 方法名 ();
b.抽象类中不一定只有抽象方法,有抽象方法的类一定是抽象类。
c.抽象类不能实例化,抽象类应该按照多态通过子类对象进行实例化,叫做抽象类多态。
d.抽象类的子类:
1.要么是抽象类;
2.要么重写抽象类中所有的抽象方法;
e.代码案例;
子类为抽象类:
C.抽象类中的成员特点
a.成员变量:
1.可以为变量;
2.可以为常量;
b.构造方法:
1.可以存在构造方法,但不能实例化
2.构造方法的意义在于子类访问父类数据的初始化
d.成员方法:
1.可以有成员方法,为了提高代码的复用性;
2.可以有抽象方法,目的为了限定子类必须完成父类的某些动作
e.代码案例;
1 package demo123; 2 /** 3 * @author ln 4 * @date 2022/1/23 5 * @desription 抽象类中成员的特点 6 */ 7 8 public abstract class Animal02 { 9 //变量 10 private int age = 5; 11 //常量 12 public final String address = "武汉"; 13 14 //构造方法 15 public Animal02 () {} 16 17 public Animal02 (int age) { 18 this.age = age; 19 } 20 21 //抽象方法 22 public abstract void eat(); 23 24 //普通方法 25 public void show(){ 26 age = 6; 27 System.out.println(address); 28 System.out.println(age); 29 } 30 31 }
1 package demo123; 2 /** 3 * @author ln 4 * @date 2022/1/23 5 * @desription 抽象类中成员的特点 6 */ 7 public class Cat02 extends Animal02 { 8 @Override 9 public void eat() { 10 System.out.println("猫要吃鱼。。。。"); 11 } 12 }
1 package demo123; 2 3 public class AnimalTest02 { 4 public static void main(String[] args) { 5 Animal02 cat = new Cat02(); 6 cat.eat(); 7 cat.show(); 8 } 9 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY