Java语言程序设计(邵丽萍编著)第六章
第6章
(一)判断题
(1)抽象类不能实例化。 ( )
(2)一个类中,只能拥有一个构造方法。 ( )
(3)内部类都是非静态的。 ( )
(4)接口中的所有方法都没有被实现。 ( )
(5)实现一个接口,则在类中一定要实现接口中的所有方法。 ( )
(6)在Java程序中,通过类的定义只能实现单一继承。 ( )
(7)语句“import java.applet.Applet;”中最后的Applet代表的是类(class)。 ( )
(二)填空题
(1)抽象方法只能存在于抽象类中,抽象方法用关键字 来修饰。
(2)Java语言中 是所有类的根。
(3)new是 对象的操作符。
(4)我们在Java程序中,把关键字 加到方法名称的前面,来实现子类调用父类的方法。
(5)在Java程序里,同一类中重载的多个方法具有相同的方法名和 的参数列表,重载的方法可以有不同的返回值类型。
(6)如果一个类中定义了几个名为method的方法,这些方法的参数都是整数,则这些方法的 必须是不同的,这种现象称为方法的重载。
(7)Java程序引入接口的概念,是为了弥补只允许类的 的缺憾。
(8)Java语言通过接口支持 继承,使类继承具有更灵活的扩展性。
(9)接口是一种只含有抽象方法或 的特殊抽象类。
(10)abstract方法 与final并列修饰同一个类。
(11)每个applet程序必须有一个类是 类的子类。
(12)在Java程序里,类之间实现共享属性的机制称为 。
(13)在Java程序里,在一个类内部嵌套定义的类称为 。
(14)一个类可以从它的父类中继承所有的属性和方法。采用这种方法可以提高软件的 。
(15)接口是包含常量和抽象方法的一个特殊的 。
(16)在运行时,由Java解释器自动引入,而不用import语句引入的包是 。
(17)一个子类一般比其基类封装的功能要 。
(18)标记成 的类的成员不能由该类的方法访问。
(19)如果一个类包含一个或多个abstract方法,它就是一个 类。
(20)接口中的数据成员是 ,接口中没有什么 方法,所有成员方法都是方法。
(三)问答题
(1)什么是继承?如何定义继承关系?
(2)子类可以继承父类中哪些方法与属性?
(3)什么是抽象方法?如何定义、使用抽象方法?
(4)什么是接口?为什么要定义接口?
(5)如何在类中实现一个接口?一个类可以实现多个接口吗?
(6)接口中如何定义抽象方法?如何创建一个实现此接口的类?
(7)接口和类有什么关系?
(8)什么是抽象类?为什么要引入抽象类的概念?
(9)接口和抽象类有什么异同?
(10)方法重载与方法覆盖有何区别?分别应用于什么场合?
(11)什么是多态,如何实现多态?
(12)this和super在意义与作用上有何相同之处?有何不同之处?
(13)包的作用是什么?如何在程序中引入已定义的类?
(14)package语句与import语句的顺序有何规定?
(15)Java如何通过接口实现多重继承?
(四)编程题
(1)定义一个接口,接口中有三个抽象方法如下。
①long fact(int m);
方法的功能为求参数的阶乘。
②long intPower(int m,int n);
方法的功能为求参数m的n次方。
③boolean findFactor(int m,int n);
方法的功能为判断参数中较小数是否为较大数的因子。
定义类实现该接口。编写应用程序,调用接口中的三个方法,并将调用方法所得的结果输出。
(2)创建一个接口IShape,接口中有一个求取面积的抽象方法public double area()。定义一个正方形类Square,该类实现了IShape接口。Square类中有一个属性表示正方形的边长;在构造方法中初始化该边长。定义一个主类,在主类中,创建Square类的实例对象,求该正方形对象的面积。
(3)定义一个抽象类AbstractTest,其中有一个公共的抽象方法dispMessage()。然后定义此抽象类的一个子类StudentTest,子类中包含姓名、学号及分数三个属性,子类具有两个构造方法。