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 }
复制代码

 

posted @   忱康  阅读(130)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示