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(){ … }
&设已声明了一个类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.下列不属于面向对象程序设计的基本特征的是: ( )
A 抽象
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 :()
C 将 private int m 改成 static int m
D 将 private int m 改成 int m 16.
在 Java 中,方法 main()将返回一个( A String B int C char D void
17.有一个类 A ,对于其构造函数的声明正确的是( )
A 将 private int m 改成 protected int m
B 将 private int m 改成 public int m )值。