Java面向对象习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
选择题
1、下列关于变量的叙述哪个是错的?()
A. 实例变量是类的成员变量。
B. 在方法中定义的局部变量在该方法被执行时创建。
C. 实例变量用关键字static声明。
D. 局部变量在使用前必须被初始化。
2、在Java语言中,下列哪个包是编译器自动导入的?()
A. java.applet
B. ng
C. java.io
D. java.awt
3、当类的成员未用访问权限修饰符时,Java认为此成员的访问权限为()。
A. private
B. protected
C.friendly
D.public
4、下面哪个关键字不是用来控制对类成员的访问的?()
A. public B. protected
C. default
D. private
5、下面哪一个特性不是面向对象编程主要体现的()。
A. 封装性
B. 继承
C. 多态
D. 类
6、不允许作为类及类成员的访问控制符的是()。
A. public
B. private
C. static
D. protected
7、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB 作为前缀就可以调用它,该方法头的形式为()。
A、static void method( )
B、public void method( )
C、final void method( )
D、abstract void method( )
8、可以在下面代码段point x处写入的是?()
//point x
public class Interesting{
//do something
}
A. String str;
B. static int PI=3.14;
C. public class MyClass{//do other thing…}
D. import java.awt.*;
9、下列关于变量的叙述哪个是错的?()
A、实例变量是类的成员变量。
B、在方法中定义的局部变量在该方法被执行时创建。
C、实例变量用关键字static声明。
D、局部变量在使用前必须被初始化。
10、下列哪个类声明是正确的?()
A、abstract final class HI{}
B、abstract private move(){}
C、protected private number;
D、public abstract class Car{}
11、已知A类被打包在packageA , B类被打包在packageB ,且B类被声明为public ,且有一个成员变量x被声明为protected控制方式。C类也位于packageA包,且继承了B 类。则以下说法正确的是:()
A、A类的实例不能访问到B类的实例
B、A类的实例能够访问到B类一个实例的x成员
C、C类的实例可以访问到B类一个实例的x成员
D、C类的实例不能访问到B类的实例
12、下列命题为真的是:()
A、所有类都必须定义一个构造函数。
B、构造函数必须有返回值。
C、构造函数可以访问类的非静态成员。
D、构造函数必须初始化类的所有数据成员。
13、在Java中,关于final关键字的说法正确的是()
A、如果修饰变量,则一旦赋了值,就等同一个常量。
B、如果修饰类,则该类只能被一个子类继承。
C、如果修饰方法,则该方法不能在子类中被覆盖。
D、如果修饰方法,则该方法所在的类不能被继承。
14、在Java中,下面关于包的陈述中正确的是()
A、包的声明必须是源文件的第一句代码。
B、包的声明必须紧跟在import语句的后面。
C、只有公共类才能放在包中。
D、可以将多个源文件中的类放在同一个包中。
简单题
1.什么叫方法的重载?构造方法可以重载么?
2.简述实例变量和类变量的区别。
3. 子类会继承父类的所有方法和属性么?
判断题
1.类是一种类型,也是对象的模板。()
2.类中说明的方法可以定义在类体外。()
3.实例方法中不能引用类变量。()
4.创建对象时系统将调用适当的构造方法给对象初始化。()
5.使用运算符new创建对象时,赋给对象的值实际上是一个引用值。()
6.对象赋值实际上是同一个对象具有两个不同的名字,它们都有同一个引用值。()7.对象可作方法参数,对象数组不能作方法参数。()
8.class是定义类的惟一关键字。()
9.Java语言会自动回收内存中的垃圾。()
编程题:
1.编写一个地址Address类,地址信息包括:国家、省份、城市、街道、邮编(6个数字)。操作方法:打印地址的详细信息、修改属性(setter getter)。
2.编写一个员工Employee类,员工属性包括:编号、姓名、基本薪水、薪水增长比例,操作方法包括:计算薪水增长金额、计算增长后的工资总额,修改薪水增长比例并打印修改之后的工资总额。
3.编写一个部门Dept类,只读属性:部门编号、部门名称、所在位置,方法:打印部门信息。一个员工信息Emp类,只读属性:员工编号、员工姓名、工种、雇佣时间、工资、补助、部门,方法:打印员工信息,计算员工的薪水,修改员工补助并打印修改之后的薪水。