接口(implements)的与继承(extends)总结及比较用法

作为一名学生,这都是我平时在学习中遇到的一些问题,不清楚不明白的地方,总结给大家的,希望能够帮助到大家

1.接口的定义
使用interface来定义一个接口。接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法定义两部分组成。定义接口的基本格式如下:

[修饰符] interface 接口名 [extends 父接口名列表]{
[public] [static] [final] 常量;
[public] [abstract] 方法;

修饰符:可选,用于指定接口的访问权限,可选值为public,如果省略则使用默认的访问权限

接口名:必选参数,用于指定接口的名称,接口名必须是合法的Java标识符,一般情况下,要求首字母大写(按照正常的写就行啦,养成一个好习惯)

extends父类接口名列表:可选参数,用于指定要定义的接口继承与哪个父接口,当时有extends关键字时,父类接口名必须选参数

方法:接口中的方法只用定义而没有被实现

2.创建接口关键字用interface,不要用class

//例子:创建一个InterfaceShape类,简称IShape类
public interface IShape {

3.接口中的成员属性都应该是静态被赋予初值的,一般情况还会使用final作为修饰使其变成一个常量

// 例子:定义一个π=3.14的常量
public static final double pi =3.14;

4.接口中允许有抽象方法,抽象方法可以省去abstract关键字,不写方法区即可,就是不写方法体

abstract public double getArea();	//getArea的抽象方法
public double getLength();	//getLength的抽象方法,抽象方法省略了abstract关键字
}

5.结合上面2,3点总结:接口中尽量定义常量,定义抽象方法

6.实现接口要用关键字implements

public class Cylinder2 implements Face1{

7.抽象类实现接口用implements,接口继承用extends

public class Cylinder2 implements Face1,Face2{
public interface Face3 extends Face1,Face2{

8.正常类继承用extends

//例如:一个子类的Cat继承了父类的Animal
public class Cat extends Animal{

9.接口是可以继承接口的

//由接口Book类继承了Conclusion可以知道接口是可以继承接口的
public interface Book extends Conclusion{

10.抽象类继承

//子类继承父类再实现接口,“就是子接口会继承父接口的所有抽象方法以及父接口中的常量 ”(“双引号”这句话是个人理解,如果说的有错误可以评论评论,我会及时修改的呢!!!)
public class Cat extends Animal implements CatTestA,CatTestB{
 
@Override
abstract pubilc void behavoir();//抽象方法
public abstract void behavoir();//public跟abstract互换位置也可以,还是抽象方法

public static void main(String [] args){	//main方法
//由此可知抽象类可以实现接口,抽象类可以继承具体类,抽象类中可以有静态的main方法,main方法都是静态的

11.类将实现接口中所以的抽象方法,以及获得接口中所以的常量

//接口在定义后,就可以在类中实现该接口。在类中实现接口可以使用关键字implements
[修饰符] class <类名> [extends 父类名] [implements 接口列表]{ 
 (按照顺序这个应该在前面,然后还稍微有点重复,是我个人总结漏掉的)

12.在类的继承中,只能做单重继承,而实现接口时,一次则可以实现多个接口,每个接口间使用","分隔(注意是英文符号),这时就可能出现常量或方法名冲突的情况,解决该问题时,如果常量冲突,则需要明确指定常量的接口,这样就可以通过“接口名,常量”实现,如果出现方法冲突时,则只需要实现一个方法就可以了

13.类是一对一,接口是一对多

(差不多就想到这么多叭,还有的话后续会补的)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值