Java面向对象程序设计习题 (12).doc
文本预览下载声明
第五章 类的继承和派生
[习题]
1.试描述继承特性。什么是父类(超类)?什么是子类?父类、子类间属性有何关系?
2.使用继承有什么好处?什么是单重继承?什么是多重继承?Java采用什么?为什么?
3.Java中如何定义继承关系?写出定义类库中的类java.awt.Frame的子类MyFrame的类头的语句。
4.设父类SupeClass中定义了公共整型属性SuperProperty,SuperClass的子类SubClass中定义了公共整型属性SubProperty,则属性subClass.SuperProperty是否存在?来自何处?
5.一个类里是否可以有同名属性共存的情况?是否最多只能有两个同名的属性。
6.一个类里有同名属性共存的情况下,如何分别操纵这些同名的属性?
7.子类重新定义与父类方法的方法头完全相同的方法,这种情况称为什么?此时子类中还能找到父类原来的方法吗?
8.子类subClass重新定义并覆盖了父类SuperClass中的方法method1(),如何使子类能够调用父类原先定义的方法method1()?
9.试解释为什么构造函数的重载方便了不同情况下创建类对象,一个构造函数如何调用同类的其他构造函数?如何调用父类的构造函数?
10.阅读下面的程序并写出类MyClass3的所有成员,并写明它们定义自哪里。
class MyClass1{
private int pro11;
double pro12;
}
class MyClass2 extends MyClass1{
private double pro12;
int pro21;
}
class MyClass3 extend MyClass2{
private int pro21;
double pro31;
}
11.定义—个类MyRectangle代表矩形,为矩形定义getLength方法(获得矩形的长度)、getWidth方法(获得矩形的宽度)、setLength方法(设置矩形的长度)、setWidth方法(设置矩形的宽度)、getArea方法(求矩形的面积)和toString方法(显示矩形的格式),为矩形派生出一个子类MySquare代表正方形,并对getArea和toString进行重写。并编写程序进行测试。
12.编写一个类实现地址的概念,包括的属性有“国家”、“省份”、“市县”、“街道”、“门牌”、“单位”、“邮编”,自行定义方法封装这些属性,并定义一个方法按照标准格式打印出寄给该地址的信封。并从该地址类派生出国内、国际两种地址,两种地址的格式不同;重载打印信封的方法,新方法不再在方法内部直接执行打印操作,而是返回一个按格式组合好的地址字符串。
Java面向对象程序设计
第五章 类的继承和派生
2
1
显示全部