Javase--接口(2)

本文详细介绍了Java接口的特性,如其作为引用类型、抽象方法的定义、接口中变量和方法的限制。讨论了如何实现多个接口、接口间的继承以及Clonable接口与深拷贝的概念。还对比了抽象类和接口在多态中的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

继上文接口的使用,本文我们小编将带大家继续叙述接口。

2.4 接口的特征

1.接口是一种引用类型,但是不能直接new接口的一个对象
不能直接new接口对象
2. 接口中每一个方法都是public的抽象方法,== 即接口中的方法会被隐式的指定为 public abstract(只能是 public abstract,其他修饰符都会报错)==。
修改为private后报错了
3. 接口中的方法是不能在接口中实现的,只能由实现接口的类来实现
在接口中实现方法报错了
继上图

  1. 重写接口中方法时,不能使用默认的访问权限(重写时的权限必须比原本的高)。
    在这里插入图片描述
  2. 接口中可以含有变量,但是接口中的变量会被隐式的指定为 public static final 变量在这里插入图片描述
  3. 接口中不能有静态代码块和构造方法,接口中只包含有抽象方法和常量
  4. 接口虽然不是类,但是接口编译完成后字节码文件的后缀格式也是.class
  5. 如果类没有实现接口中的所有的抽象方法,则类必须设置为抽象类
  6. jdk8中:接口中还可以包含default方法。

2.5 实现多个接口

在Java中,类和类之间是单继承的,一个类只能有一个父类,即Java中不支持多继承,但是一个类可以实现多个接口。下面通过类来表示一组动物.
在这里插入代码片

package Demo2;

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

另外我们再提供一组接口, 分别表示 “会飞的”, “会跑的”, “会游泳的”.

public interface Running {
   
    void run();
}
public interface Flying {
   
    void fly();
}
public interface Swimming {
   
    void swim();
}
public interface Leaping {
   
    void l
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值