当前位置: 首页 > article >正文

JAVA中的抽象类

一、抽象类的示例

public class Abstract01 {
    public static void main(String[] args) {

    }
}
当一个类中存在抽象方法则需要将该类声明为抽象类
abstract class Animal{
    private String name;

    public Animal(String name) {
        this.name = name;
    }

    public abstract void eat();
}
出现父类方法不确定性的问题 => 将该方法设计为抽象方法
=> 抽象方法就是没有方法体的方法
public abstract void eat();

二、注意事项和细节

1.抽象类不能被实例化
public class AbstractDetail01 {
    public static void main(String[] args) {
       // new A();
    }
}

abstract class A{
    public void say(){
        System.out.println("hello");
    }
}
2.抽象类不一定要包含abstract方法,还可以有实现的方法
3.一旦包含了abstract方法则必须声明为abstract类
4.abstract只能修饰类和方法不能修饰属性和其它的
5.抽象类可以有任意成员(抽象本质还是类)
abstract class AA{
    private int n1;
    public abstract void hi();
}
6.抽象方法不能有主体
7.如果一个类继承了抽象类,则必须实现抽象类的所有抽象方法
   除非自己有声明
abstract class AA{
    private int n1;
    public abstract void hi();
}

class BB extends AA{
    public void hi(){
        System.out.println(111);
    }
}
8.抽象方法不能使用private、final、static来修饰
  因为这三个关键字会与重写相违背的


http://www.kler.cn/a/230055.html

相关文章:

  • 【软件国产化】| Windows和Linux下文件名后缀是否区分大小写
  • 攸信技术:运动文化激发企业活力,赋能体育行业新未来
  • 【DL笔记】神经网络轻量化(CV方向)的一些论文记录
  • 为什么DDoS防御很贵?
  • 鸿蒙征文|鸿蒙心路旅程:从零到一的探索与成长——我的HarmonyOS
  • strupr(arr);模拟实现(c基础)
  • Oracle systemstate、gdb、dbx介绍
  • docker 部署springboot项目详细步骤
  • jquery写表格,通过后端传值,并合并单元格
  • deepin20.9安装及配置
  • 代驾应用系统(ssm)
  • P9240 [蓝桥杯 2023 省 B] 冶炼金属--2024蓝桥杯冲刺省一
  • 【Kubernetes】在k8s1.24及以上版本基于containerd容器运行时测试pod从harbor拉取镜像
  • MySQL数据引擎、建库及账号管理
  • P4408 [NOI2003] 逃学的小孩
  • 【自然语言处理】P1 对文本编码(One-Hot 与 TF-IDF)
  • Linux命令-arpwatch命令(监听网络上ARP的记录)
  • 《极致产品力》日本深度研学 | 火热报名中!
  • 【python】学习笔记02-判断语句
  • ubuntu 上安装和配置Apache2+Subversion
  • 【HTML】MDN
  • 基于OpenCV灰度图像转GCode的单向扫描实现
  • ffmpeg命令生成器
  • 使用 KITTI数据集训练YOLOX
  • T-Sql 也能更新修改查询JSON?
  • 【MATLAB】使用梯度提升树在回归预测任务中进行特征选择(深度学习的数据集处理)