java面向对象编程、类地封装、接口和基本类库练习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象编程基本知识练习
一、判断题
1.不需要定义类,就能创建对象。()
2.构造方法用于给类的 private 实例变量赋值。()
3.对象一经声明就可以立即使用。()
4.在定义变量和方法时,必须清楚地在其面前标上访问权限修饰符。()
5.Java 程序中的参数传递都是把参数值传递给方法定义中的参数。()
6.在类定义中,成员访问权限修饰符不能多次出现。()
7.new 操作符动态地为对象按其指定的类型分配内存,并返回该类型的一个引用。()
8.类的方法通常设为 public,而类的实例变量一般也设为 public。()
9.构造方法在创建对象时被调用。()
10.通过点运算符与类对象的引用相连,可以访问此类的成员。()
11.声明为 protected 的类成员只能被此类中的方法访问。()
12.同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间。()
13.类的成员变量可以放在类体的任意位置。()
14.声明为 protected 的类成员可以被此类作用域中的任何对象访问。()
15.没有返回值的方法可以用 void 来表示,也可以不加。()
二、选择题
1. 下面对对象概念描述错误的是:( )
A 操作是对象的动态属性
B 任何对象都必须有继承性
C 对象间的通讯靠消息传递
D 对象是属性和方法的封装体
2.编译并运行下面的程序,运行结果为:( )
public class A
{
public static void main(String[] args)
{
A a=new A();
a.method(8);
}
void method(int i)
{
System.out.println(“int:“+i);
}
void method(long i)
{
System.out.println(“long:“+i);
}
}
A 程序可以编译运行,输出结果为 int:8
B 程序可以编译运行,输出结果为 long:8
C 程序有编译错误,因为两个 method()方法必须定义为静态(static)的
D 程序可以编译运行,但没有输出
3.下面关于类的说法不正确的是:()
A 类是 Java 语言中的一种复合数据类型
B 类中不包含数据变量和方法
C 类是对所有具有一定共性的对象的抽象
D Java 语言的类只支持单继承
4.能作为类及其成员的修饰符是:()
A interface
B class
C protected
D public
5.设 x、y 均为已定义的类名,下列声明对象 x1 的语句不可能正确的是:()
A public x xl=new y();
B public y xl=new x();
C x xl=new x();
D x xl=x();
6.面向对象程序设计技术的特点是:()
A 可重用性
B 可维护性
C 表示方法的一致性
D 可重用性、可维护性、表示方法的一致性
7.下列方法定义中,方法头不正确的是:()
A public static x(double a){…}
B public static int x(double y){…}
C void x(double d)
D public int x(){…}
8.设已声明了一个类 A 的两个对象 al、 a2,为了初始化 a1 和 a2,下面语句正确的是:()
A al=new(); a2=new();
B al=A new(); a2=A new();
C al,a2=new A();
D al=new A(); a2=new A();
9.构造方法何时被调用?()
A 类定义时
B 使用对象的变量时
C 调用对象方法时
D 创建对象时
10.下列哪个类声明是正确的?()
A public abstract class Car{…}
B abstract private move(){…}
C protected private number;
D abstract final class Hl{…}
11.下列不属于面向对象程序设计的基本特征的是:()
B 封装
C 继承
D 静态
12.请看下面的程序段
class Person {
String name,department;
int age;
public Person(String n) { name = n; }
public Person(String n,int a) { name = n; age = a; } public Person(String n,String d,int a) {
//doing the same as two arguments version of constructer //including assignment name=n,age=a
}
}
下面那一选项可以添加到“//doing the same……”处:()
A Person(n,a)
B this(Person(n,a))
C this(n,a)
D this(name.age)
13.()是一个特殊的方法,用于对类的实例变量进行初始化。
A 终止函数
B 构造函数
C 重载函数
D 初始化函数
14.关于变量和它们范围的说法,正确的是:()
A 实例变量是类的成员变量
B 实例变量要用关键字 static 来声明
C 在一个方法执行时,定义在该方法的局部变量才被创建
D 局部变量必须在它们使用前初始化
15.请看下面的程序段
class Test{
private int m;
public static void fun(){
//some code…
}
}
方法 fun()如何来访问变量 m:()
A 将 private int m 改成 protected int m
B 将 private int m 改成 public int m
C 将 private int m 改成 static int m
D 将 private int m 改成 int m
16.在 Java 中,方法 main()将返回一个()值。
A String