习题
一、选择题(答案可能不止一个)
1.下面的是关于类及其修饰符的一些描述,正确的是:( )。
A.abstract类只能用来派生子类,不能用来创建abstract类的对象。
B.final类不但可以用来派生子类,也可以用来创建final类的对象。
C.abstract不能与final同时修饰一个类。
D.abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。2.在使用interface声明一个接口时,只可以使用( d )修饰符修饰该接口。
A.private
B.protected
C.private protected
D.public 3.给定下列程序,哪些是正确的?( )
public abstract interface Frobnicate{
public void twiddle(String s);
}
A.public abstract class Frob implements Frobnicate{
public abstract void twiddle(String s){}
}
B.public class Frob extends Frobnicate{
public void twiddle(String s){}
public void twiddle(Integer i){}
}
C.public abstract class Frob implements Frobnicate{}
D.public class Frob extends Frobnicate{
public void twiddle(Integer i){}
}
二、填空题
1.方法是一种仅有方法声明,没有方法体的方法,该方法必须在抽象类之中定义。
2. 如果某个子类没有覆盖抽象方法,则必须被声明为类。
3.如果一个类没有覆盖接口定义中的全部方法,则必须被声明为类。
三、判断题
1.接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。( ) 2.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。( )
3.一个类如果实现了某个接口,那么它必须重载该接口中的所有方法。( )
4.类在实现接口的方法时,必须显示地使用public修饰符。( )
5.实现一个接口,则在类中一定要实现接口中的所有方法。( )
6.抽象类不能实例化。( )
7.接口名可以作为方法返回值的类型。( )
四、思考题
1.为什么要使用抽象类?如何定义抽象类和抽象方法?抽象类中是否可以不包含抽象方法?
2.什么是接口?为什么要定义接口?接口与抽象类有何异同?
3.如何定义接口?使用什么关键字?
4.一个类如何实现接口?实现接口的类是否一定要重写该接口中的所有抽象方法?
五、编程题:根据如图1所示的UML图设计各类和接口,然后再创建一个包含main()的类来测试这些类和接口,要求输出以下文本:
java接口可以创建对象吗鱼喜欢吃草,狗喜欢啃骨头
鱼使用螵呼吸,狗使用肺呼吸
狗正在和一只可怜的老鼠逗着玩呢
图1 类和接口的层次图
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论