2602: 接口模拟练习
金币值:2
定数:3
时间限制:1.000 s
内存限制:128 M
正确:1
提交:6
正确率:16.67% 命题人:
题目描述
任务描述
本关任务:掌握接口相关的知识。
相关知识
为了完成本关任务,你需要掌握:1.接口的定义; 2.接口的实现; 3.接口的扩展。
接口的定义
接口(interface)是Java所提供的另一种重要技术,它的结构和抽象类非常相似,也具有数据成员与抽象方法,但它与抽象类又有以下两点不同:接口定义的语法如下:
interface 接口名称 // 定义抽象类 { final 数据类型 成员名称 = 常量; //数据成员必须赋初值 abstract 返回值的数据类型 方法名称(参数...); //抽象方法,注意在抽象方法里,没有定义方法主体 }
接口与一般类一样,本身也具有数据成员与方法,但数据成员一定要赋初值,且此值将不能再更改,方法也必须是“抽象方法”。也正因为方法必须是抽象方法,而没有一般的方法,所以抽象方法声明的关键字abstract是可以省略的。
相同的情况也发生在数据成员身上,因数据成员必须赋初值,且此值不能再被更改,所以声明数据成员的关键字final也可省略。事实上只要记得:
接口的实现
在Java中接口是用于实现多继承的一种机制,也是Java设计中最重要的一个环节,每一个由接口实现的类必须在类内部复写接口中的抽象方法,且可自由地使用接口中的常量。既然接口里只有抽象方法,它只要声明而不用定义处理方式,于是自然可以联想到接口也没有办法像一般类一样,再用它来创建对象。利用接口打造新的类的过程,称之为接口的实现(implementation)。
接口实现的语法:
class 类名称 implements 接口A,接口B //接口的实现 { ... }
接口的扩展
接口是Java实现多继承的一种机制,一个类只能继承一个父类,但如果需要一个类继承多个抽象方法的话,就明显无法实现,所以就出现了接口的概念。一个类只可以继承一个父类,但却可以实现多个接口。接口与一般类一样,均可通过扩展的技术来派生出新的接口。原来的接口称为基本接口或父接口,派生出的接口称为派生接口或子接口。通过这种机制,派生接口不仅可以保留父接口的成员,同时也可加入新的成员以满足实际的需要。
同样的,接口的扩展(或继承)也是通过关键字extends来实现的。有趣的是,一个接口可以继承多个接口,这点与类的继承有所不同。
接口扩展的语法:
interface 子接口名称 extends 父接口1,父接口2... { ... }
编程要求
根据提示,在下方测试代码中补充代码:
具体输出要求请看测试说明。
测试说明
详见下方输入输出.
测试代码
请根据提示补全代码.为防止面向答案输出,本题已设置为提交部分代码模式,请注意代码补全提交内容,你只需提交代码补全开始处和代码补全结束处的代码即可,提交全部代码会报CE(编译错误).
测试代码 复制
public class Main {
public static void main(String[] args) {
Student s = new Student();
s.talk();
}
}
interface Person {
/********* 代码补全提交开始 *********/
/********* begin *********/
/********* end *********/
}
class Student implements Person {
/********* begin *********/
/********* end *********/
/********* 代码补全提交结束 *********/
}
输出样例 复制
学生——>姓名:张三,年龄:18,职业:学生!