2022-07-26 第四小组 抽象类、接口

抽象


abstract
抽象方法没有大括号,没有方法体
抽象方法存在的意义
根本意义,约定:自定义的规则
约定了返回值,访问权限,参数列表,,需要在重写的时候,重新第一方法体
约定大于配置,配置大于编码
抽象方法必修在一个抽象类里
    当我们定义一个抽象类,这个抽象类中可以有哪些结构
        属性,成员方法,构造器,抽象方法,常量
     抽象类中能不能没有抽象方法
        可以
    抽象类是不能被实例化的
        抽象类不能被创建对象
抽象类的构造器存在的意义:
    为了约定子类的构造器必须和父类匹配
一个类如果继承了一个抽象类,就必须重写这个抽象类的所有抽象方法
abstract能修饰什么?
    类 、 方法。
总结:抽象方法必须是public 和 protected
    抽象类是不能被直接实例化的,需要依靠子类采用向上转型的方式处理
    抽象类必须有子类,使用extends继承,一个类只能继承一个抽象类
    子类(如果不是抽象类)则必修重写类中所有的抽象方法
        (如果子类没有实现父类的抽象方法,必须将子类定义为abstract)


接口


比抽象类更高级的抽象
抽象类也是比类更高级的抽象
声明:使用 interface关键字
接口中只能定义抽象方法,不能有属性,不能有方法.
(可以放静态常量和静态方法、默认方法)
接口中结构的特点:
    接口中的方法默认是public
接口中的结构必须是public
接口可以被实现
如果一个类实现了一个接口,它就需要重写接口的所有方法
接口存在的意义:
约定
java 中存在多继承的,发生在接口之间
类与类之间是单继承


匿名实现类

 public class Ch01 {
    public static void main(String[] args) {
        Abstr01 abstr01=new Abstr01() {
            public void show(){
                System.out.println("重写show方法");
            }
        };
        abstr01.show();
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值