jro java_java接口的定义

先看这段代码

class cam0

{

public void print()

{

System.out.println("aaa");

}

}

class cam1 extends cam0

{

public void print()

{

System.out.println("bbb");

}

}

public class cam2

{

static public void main(String args[])

{

cam0 a;

a=new cam1();

a.print();

}

}

很显然,输出为bbb,执行的是子类的成员函数,此时父类的成员函数没有用处,父类的cam0也可以这样写

abstract class cam0

{

public abstract void print();

}

即cam0类没有实例,且print函数没有函数体

这就相当于接口

接口的定义如下

[修饰符]interface[extends]

{

数据成员; //默认为public static final

成员函数; //默认为public abstract

}

注意:接口可实现多重继承

接口的实现如下

[访问修饰符]class 类名 implements[接口列表]

{

public 成员函数;

}

注意:类实现接口,它必须实现接口中所有的方法

上例的代码写为接口的形式如下

interface cam0

{

void print();

}

class cam1 implements cam0

{

public void print()

{

System.out.println("aaa");

}

}

public class cam2

{

static public void main(String args[])

{

cam0 a=new cam1();

a.print();

}

}

接口的多重继承可以让一个接口去继承多个接口, 再用一个类来实现接口,也可以让一个类去继承多个接口

如下例

interface a

{

void aa();

}

interface b

{

void bb();

}

interface c extends a,b

{

}

class cam1 implements c

{

public void aa()

{

System.out.println("aa");

}

public void bb()

{

System.out.println("bb");

}

}

public class cam2

{

static public void main(String args[])

{

cam1 a=new cam1();

a.aa();

a.bb();

}

}

输出为aa,bb,接口c继承了接口a,b

换一个种写法, 让一个类去继承多个接口

interface a

{

void aa();

}

interface b

{

void bb();

}

class cam1 implements a,b

{

public void aa()

{

System.out.println("aa");

}

public void bb()

{

System.out.println("bb");

}

}

public class cam2

{

static public void main(String args[])

{

cam1 a=new cam1();

a.aa();

a.bb();

}

}

输出为aa,bb,类cam1继承了接口a,b

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值