面向对象的Java语言练习.docx
- 文档编号:7794039
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:7
- 大小:40.22KB
面向对象的Java语言练习.docx
《面向对象的Java语言练习.docx》由会员分享,可在线阅读,更多相关《面向对象的Java语言练习.docx(7页珍藏版)》请在冰豆网上搜索。
面向对象的Java语言练习
2.面向对象的Java语言练习
§2.1概述
1. 面向对象编程语言的基本特征是什么?
2. 常见的面向对象的程序设计语言包括哪些?
3. Java语言中,被static关键字修饰的成员变量与类变量有什么区别?
4. 面向过程程序设计的核心是:
A.商业逻辑B.客观实体C.算法D.要解决的问题
5.面向对象技术中的对象具有状态,行为和_________等三个基本属性。
6.使用一个对象前,必须声明并___________它。
§2.2类、对象和方法
1.什么是对象?
什么是类?
对象与类的关系是什么?
2.类的定义中包括那些基本信息?
3.定义一个类包括定义类头和定义_______两个部分。
4.类变量与实例变量的区别?
5. 类方法与实例方法的区别?
6. 符合对象和类关系的是:
A.人和老虎B.书和汽车C.楼和建筑物D.汽车和交通工具
7.什么是方法,以及方法的作用?
8.举例说明方法的调用?
9.简述方法的递归调用过程?
10.什么是方法的重载?
11.什么是异常?
试列出三个系统定义的运行时异常类。
12.try-catch-finally语句的执行顺序是怎样的?
13. Java程序可以分为Application和Applet两大类,能在WWW浏览器上运行的是_________。
14. 如果子类中的某个方法的名字、返回值类型和参数列表与它的父类中的某个方法完全一样,则称子类中的这个方法__________了父类的同名方法。
15. 定义类头时能使用的修饰符是()。
A)privateB)staticC)abstractD)protected
16. 下列方法定义中,正确的是()。
A)intx(){charch='a';return(int)ch;}
B)voidx(){...returntrue;}
C)intx(){...returntrue;}
D)intx(inta,b){returna+b;}
§2.3构造方法
1.构造方法在类中的作用是什么?
2.在创建派生类的对象的时候,基类与派生类中构造方法的调用顺序怎样?
3.以下哪个方法仅在Applet程序被创建和首次被载入支持Java的浏览器时被调用
A)paint()B)init()C)action()D)start()
4.在某个类A中存在一个方法:
voidGetSort(intx),以下能作为这个方法的重载的声明的是
A)VoidGetSort(floatx)B)intGetSort(inty)
C)doubleGetSort(intx,inty)D)voidGet(intx,inty)
5.有一个类A,以下为其构造函数的声明,其中正确的是()。
A)voidA(intx){...}B)A(intx){...}
C)a(intx){...}D)voida(intx){...}
6阅读程序,根据程序功能,在指定的空白处填上适当的语句或语法成分,使程序完整。
1).下面是一个类的定义。
class____________//定义名为myclass的类
{
__________intvar=666;
staticintgetvar()
{
returnvar;
}
}
2).下面是用户程序对Applet类中方法paint()的重新定义。
__________voidpaint(Graphicsg)
{g.______("你好!
",10,20);}
3).下面是用户程序对Applet类中方法action()的重新定义,功能为从单行文本编辑区input中输入数据赋给k。
TextField类的对象input和int型变量k已在类体中正确说明。
public___________action(Evente,Objecto)
{if(e.target==input)
k=Integer.parseInt(_______.getText());
repaint();
returntrue;
}
7. 请指出下面程序中的错误。
publicclassTestextendsBase
{
publicTest()
{
super();
}
publicstaticvoidmain(String[]args)
{
Testt=newTest();
Testt2=newTest("TestName");
}
}
classBase
{
Stringname;
Base()
{
System.out.println("BaseConstructor");
}
Base(Stringname)
{
this.name=name;
}
}
§2.4继承
1.是一种软件重用形式,在这种形式中,新类获得现有类的数据和方法,并可增加新的功能。
2.派生类构造方法可以通过关键字_______调用基类构造方法。
3.Java语言的类间的继承关系是()。
A)多重的B)单重的C)线程的D)不能继承
4.编程题
(1) 根据下面的要求实现圆类Circle:
● Circle类的成员变量:
radius 半径
● Circle类的方法成员
Circle() 构造方法,将半径置为0
Circle(doubler) 构造方法,创建Circle对象时将半径初始化为r
doublegetRadius() 获得圆的半径值
doublegetPerimeter() 获得圆的周长
doublegerArea() 获得圆的面积
voiddisp() 将圆的半径、周长、面积输出到屏幕
(2) 继承上题中的圆Circle类,派生圆柱体类Cylinder,要求如下:
● Cylinder类的成员变量:
height表示圆柱体的高
● Cylinder类的方法成员:
Cylinder(doubler,doubleh) 构造方法,创建Cylinder对象时将圆半径初始化为r,圆柱高初始化为h
doublegetHeight() 获得圆柱体的高
doublegetVol() 获得圆柱体的体积
voiddispVol() 将圆柱体的体积输出到屏幕
5.创建如下图所示继承层次结构中的类。
Employee对象应当有姓名、年龄和社会保险号码,除此之外SalariedEmployee对象还有周薪,HourlyEmployee对象有相应的基本工资和工作小时数,CommissionEmployee对象应当有佣金率和销售总额,BasePlusCommissionEmployee对象应当有对应的基本工资。
每个类有合适的构造方法和访问其成员属性的方法。
请编写一个程序,实例化以上所有类的对象,输出相关员工的基本信息。
§2.5多态
1.实现如图所示的shape层次结构。
每个TwoDimensionalShape类应包含getArea方法,用来计算该图形的面积。
每个ThreeDimensionalShape类应包含getArea和getVolumn方法,分别用来计算该图形的面积和体积。
创建应用程序,该程序使用一个Shape引用数组来保存层次结构中的所有图形的具体类的对象,该程序打印每个数组元素所引用的对象。
此外,利用循环结构处理数组中的图形,以确定每个图形是TwoDimensionalShpae还是ThreeDimensionalShape类的对象,如果图形是TwoDimensionalShpae类的对象,则显示该图形的面积,如果是ThreeDimensionalShape类的对象,则显示该图形的面积和体积。
2.请指出下面程序中的错误
classFather
{
privateintage;
publicvoidsetAge(inta)
{
this.age=a;
}
publicintgetAge()
{
returnage;
}
publicvoiddisp()
{
System.out.println("ageis"+age);
}
}
classSonextendsFather
{
Stringname;
publicvoidsetName(Stringname)
{
name=name;
}
publicvoiddisp()
{
disp();
System.out.println("mynameis"+name);
}
}
publicclassTest
{
publicstaticvoidmain(Stringargs[])
{
Sons=newSon();
s.disp();
}
}
3.为了区分重载多态中同名的不同方法,要求()。
A)采用不同的形式参数列表B)返回值类型不同
C)调用时用类名或对象名做前缀D)参数名不同
§2.6抽象类与接口
1.什么是接口?
为什么要定义接口?
接口与类有何异同?
2.如何定义接口?
使用什么关键字?
3.一个类如何实现接口?
实现接口的类是否一定要重写该接口中的所有抽象方法?
§2.7包
1.Java中引入包的优点是什么?
2.如何将需要的外部类引入程序中?
如何引用包中的某个类?
如何引用整个包?
3.如何运行被打包后的字节码文件?
§2.8异常处理
1.什么是异常?
举出程序中常见的异常的种类?
2.Java中异常处理有什么优点?
3.在Java中,throw与throws有什么区别?
他们各自用在什么地方?
4.请设计一个Java程序,程序中要进行数组操作和除法操作,要求对所设计的程序可能出现的异常进行处理。
5.定义一个邮件地址异常类,当用户输入的邮件地址不合法时,抛出异常。
(其中邮件地址的合法格式为****@****,也就是说必须是在@符号左右出现一个或多个其他字符的字符串。
)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 Java 语言 练习
![提示](https://static.bdocx.com/images/bang_tan.gif)