当前位置:文档之家› Java面向对象选择试题

Java面向对象选择试题

Java面向对象选择试题
Java面向对象选择试题

选择正确的答案

1) 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要有子类重写,应该使用(c)关键字来申明父类的这些方法。

a) Final

b) Static

c) Abstract

d) Void

2) 给定两个java程序,如下:

public interface Face{

int counter = 40;

}

public class Test implements Face{

private static int counter;

public static void main(String[]args){

System.out.println(++counter);

}

}

Test.java 的编译运行结果是(D )。

a) 40

b) 41

c) 0

d) 1

3) 给定java代码,如下:

public class Test{

static int i;

public int aMethod( ){

i++;

return i;

}

public static void main(String [] args){ Test test = new Test( );

test.aMethod( );

System.out.println(test.aMethod( ));

}

}编译运行后,输出结果是(C)。

a) 0

b) 1

c) 2

d) 3

4) 给定java代码,如下:

abstract class Shape

{

abstract void draw( );

}

要创建Shape类的子类Circle,以下代码正确的是(BD)。

a) class Circle extends Shape{

int draw( ){}

}

b) abstract class Circle extends Shape{

}

c) class Circle extends Shape{

void draw( );

d) class Circle extends Shape{

void draw( ){}

}

5) 给定java代码,如下:

class Parent{

public void count( ){

System.out.println(10%3);

}

}

public class Test extends Parent{ public void count(int i){

System.out.println(10%i);

}

public static void main(String[]args){ Parent p = new Test( );

p.count(3);

}

}

编译运行,结果是(A )。

a) 1

b) 3

c) 3.333333333333335

d) 编译错误

7) 给定java程序,如下:

public class Test{

private static final int counter=10;

public static void main(String [] args){

System.out.println(++counter);

}

}

编译运行Test.java,结果是(C )

a) 10

b) 11

c) 编译错误

d) 运行时出现异常

8) 在java中,以定义了两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是(C)

a) interface A extends B,C

b) interface A implements B,C

c) class A implements B,C

d) class A implements B,implements C

9) 给定一个Java程序代码,如下:

public class Test{

int count = 9;

public void count1(){

int count =10;

System.out.println("count1="+count); }

public void count2(){

System.out.println("count2="+count); }

public static void main(String args[]){

Test t=new Test();

t.count1();

t.count2();

}

行编译后,输出结果是(B)

a) count1=9

count2=9

b) count1=10

count2=9

c) count1=10

count2=10

d) count1=9

count2=10

11) 给定如下java 代码,以下()访问控制修饰符可以填入下划线处。

class Parent{

protected void eat(){}

}

class Child extends Parent{

___AD____ void eat(){}

}

a) Protected

b) Private

c) 什么也不填

d) Public

12) 在Java中,下面关于抽象类的描述正确的是(ABD)。

a) 抽象类可以被实例化

b) 如果一个类中有一个方法被声明为抽象的,那么这个类必须是抽象类

c) 抽象类中的方法必须都是抽象的

d) 声明抽象类必须带有关键字abstract

13) 给定如下Java代码,以下(AB)方法可以加入Child 类中。

Public class Parent{

int change(){…}

}

Class Child extends Parent{

()

}

a) public int change(){}

b) int chang(int i){}

c) private int change(){}

d) abstract int change(){}

14) 在java中,在定义类时加上修饰符(D)可以实现该类不能在本类被实例化。

a) Final

b) Public

c) Private

d) Abstract

15) 在java中,下面(AB)的陈述是正确的。

a) 私有方法不能被重载

b) 静态方法能被重载

c) 公有方法被重写后的访问修饰符可以变成private

d) 一个被重写的方法不能抛出一个在基类中不被检查的异常

16) 分析下面的java代码输出结果为(D)。

Class Point{

Int x,y;

Point(int x,int y){

This.x=x;//值传递

This.y=y;

}

Public ststic void main(String[] args){

Point pt1,pt2;

Pt1=new Pint (3,3);

Pt2=new Pint(4,4);

System.out.print(pt1.x+pt2.x);

}

}

a) 6

b) 34

c) 8

d) 7

17) 在java中,以下程序的输出结果是(C)。Class Point

{

Int x;

Boolean y;

Void output()

{

System.out.println(x);

System.out.println(y);

}

Public static void main(String[] args) {

Piont pt =new Point();

Pt.output();

}

}

a) 运行错误

b) 0

Ture

c) 0

False

d) 0

18) 给定java代码如下,编译运行结果是(A)。public class Test{

public int count(){

return 1%9;

}

public static void main(String[] args){

System.out.println(count());

}

}

a) 编译错误

b) 运行时出现例外

c) 正常运行,输出1

d) 正常运行,输出0

20) 在Java接口中,下列选项里有效的方法声明是(AB)

a) public void aMethod();

b) void aMethod();

c) static void aMethod();

d) protected void aMethod();

22) 给定java代码,如下:编译运行,结果是(A)public static void main (String [] args){

String s;

System.out.println(“s=”+s);

}

a) 编译错误

b) 编译通过,但出现运行时错误

c) 正常运行,输出s=null

d) 正常运行,输出s=

23) 给定java代码,如下,编译运行后,结果是( B)。public class Test{

static String s;

publis static void main(String args[ ]){

char c=s.charAt(0);

System.out.println(c);

}

}

a) 编译错误

b) 运行期异常,异常类型为NullpointerException

c) 运行期异常,异常类型为ArithmeticExceptioin

d) 运行正常,但无输出内容

java面向对象试卷及答案

java面向对象程序设计 系班级姓名成绩得分评卷人 一、填空题(每空2分,共20分) 1.Java源程序的扩展名是,经过编译后的程序的扩展名是。2.Socket通常也称为,用于描述和。3.线程的优先级在至之间,数值越大 4.构造方法是一种特殊的成员方法,构造方法名与相同 5.Java语言只允许单继承,指每个类只能有一个。 二、选择题(每题2分,共50分) 1.下列哪个概念是面向对象和面向过程程序设计所共有的() A、继承 B、流程控制 C、抽象 D、封装 2.以下关于执行Java小程序的论述错误的是:() A、可以通过浏览器调用嵌入了Java小程序的HTML文档 B、可以通过appletviewer.exe调用嵌入了Java小程序的HTML文档 C、可以通过java.exe调用嵌入了Java小程序的HTML文档 D、可以在Java集成开发环境中调用嵌入了Java小程序HTML文档 3.符合对象和类关系的是:() A、人和老虎 B、书和汽车 C、楼和土地 D、松树和植物 4.关于选择结构下列哪个说法正确?() A.if语句和else语句必须成对出现 B.if语句可以没有else语句对应 C.一个if语句只能有一个else if语句与之对应 D.else if结构中必须有default语句 5.while循环和do…while循环的区别是:()

A.没有区别,这两个结构任何情况下效果一样 B.while循环比do…while循环执行效率高 C.do…while循环执行次数可能为0 D.while循环执行次数可能为0 6.关于for循环和while循环的说法哪个正确?() A.while循环先判断后执行,for循环先执行后判断。 B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果C.两种循环任何时候都不可以替换 D.两种循环结构中都必须有循环体,循环体不能为空 7.下列修饰符中与访问控制无关的是() A.private B.public C.protected D.final 8.方法内的形参:() A.必须定义多个形参B.可以没有 C.至少有一个D.只能是简单变量 9.throws的作用:() A.表示方法可能会抛出例外 B.表示后面是方法的输出量 C.方法的标志,每个方法都必须有 D.没有意义 10.在Java语言中,整型常量123占用的存储字节数是:()A.1B.2 C.4 D.8 11.关于对象成员占用内存的说法哪个正确?() A.同一个类的对象共用同一段内存 B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存 D.以上都不对 12.return语句:()

Java面向对象测试试题

《使用Java实现面向对象编程》阶段测试-笔试试卷 一、选择题(共25题,每题4分,满分100分) 1) 在Java类中,使用以下()声明语句来定义公有的int型常量MAX。 A. public int MAX = 100; B. final int MAX = 100; C. public static int MAX = 100; D. public static final int MAX = 100; 2) 在Java中,下列关于方法重载的说法中错误的是()。 A. 方法重载要求方法名称必须相同 B. 重载方法的参数列表必须不一致 C. 重载方法的返回类型必须一致 D. 一个方法在所属的类中只能被重载一次 3) 给定Java代码如下所示,在横线处新增下列()方法,是对cal方法的重载。 public class Test{ public void cal(int x, int y, int z) {} } A. public int cal(int x, int y, float z){ return 0; } B. public int cal(int x, int y, int z){ return 0; } C. public void cal(int x, int z){ } D. public void cal(int z, int y, int x){ } 4) 在Java中,下面对于构造函数的描述正确的是()。 A. 类必须显式定义构造函数 B. 构造函数的返回类型是void C. 构造函数和类有相同的名称,并且不能带任何参数 D. 一个类可以定义多个构造函数

Java面向对象测试试题(经典)

《使用实现面向对象编程》阶段测试-笔试试卷 一、选择题(共25题,每题4分,满分100分) 1) 在类中,使用以下()声明语句来定义公有的型常量。 A. = 100; B. = 100; C. = 100; D. = 100; 2) 在中,下列关于方法重载的说法中错误的是()。 A. 方法重载要求方法名称必须相同 B. 重载方法的参数列表必须不一致 C. 重载方法的返回类型必须一致 D. 一个方法在所属的类中只能被重载一次 3) 给定代码如下所示,在横线处新增下列()方法,是对方法的重载。 { ( x, y, z) {} } A. ( x, y, z){ 0; } B. ( x, y, z){ 0; } C. ( x, z){ }

D. ( z, y, x){ } 4) 在中,下面对于构造函数的描述正确的是()。 A. 类必须显式定义构造函数 B. 构造函数的返回类型是 C. 构造函数和类有相同的名称,并且不能带任何参数 D. 一个类可以定义多个构造函数 5) 下面代码的运行结果是()。 { ; 名字 0; 健康值 ; 性别 () { = 10; = "雄"; ("执行构造方法。"); } () { ("企鹅的名字是" + + ",健康值是" + + ",性别是" + "。"); } ([] ) { = (); (); } } A. 企鹅的名字是,健康值是10,性别是雄。 B. 执行构造方法。

企鹅的名字是,健康值是0,性别是。 C. 企鹅的名字是,健康值是0,性别是。 D. 执行构造方法。 企鹅的名字是,健康值是10,性别是雄。 6) 下列选项中关于中封装的说法错误的是()。 A. 封装就是将属性私有化,提供公有的方法访问私有属性 B. 属性的访问方法包括方法和方法 C. 方法用于赋值、方法用于取值 D. 类的属性必须进行封装,否则无法通过编译 7) 使用实现封装,第一步是修改属性可见性来限制对属性的访问,第二步是创建赋值和取值方法,用于对属性的访问,第三步应该是()。 A. 使用赋值和取值方法访问属性 B. 编写常规方法访问属性 C. 在赋值和取值方法中,加入对属性的存取限制 D. 编写方法创建对象,调用赋值和取值方法访问属性 8) 分析如下所示的代码,其中关键字的意思是()。 { ; () { ;

java面向对象练习题

java面向对象练习题 1定义了一个函数来接收一年并确定它是否是闰年什么是闰年?可以除以4而不是100,或者可以除以400,那么今年是闰年 2年,使用do-while重写猜谜游戏(希望比老师更完美) 3定义了一个接收数组的函数,找到数组中的最大值,并计算数组中所有奇数的和4定义一个函数来接收数组,并将数组中元素的最大值放在数组的第一个位置练习5:输出1-150个奇数并计数 6练习:计算1-100的和。奇数和偶数是什么?练习7:用“边做边做”来计算1到100之间的偶数练习8:用边做边猜数字的游戏9打印99 10的乘法计算1-100个奇数的和 11定义一个函数来执行加法函数操作,而不向调用者返回值 12要求:定义一个函数来比较两个数字的大小,并将最大的数字返回给呼叫者要求:定义一个函数,根据学生的分数将相应的分数返回给调用者。 14要求:定义一个函数做加法函数,直接打印,不需要返回结果给调用者要求1:定义一个函数来接收数组并取出数组中的最大值 16要求2:定义一个接收数组的函数,并将数组中的最大值放在数组的第一个位置17要求3:定义一个接收数组的函数,并将数组中的最大值放在数组的最后一个位置定义一个函数来接收数组并翻转数组中的元素例如:国际[] arr = {1,2,3,4}-{4,3,2,1 }; 19练习:定义接收二维数组的函数,计算二维数组中所有元素的和,并计算奇数

XXXX年龄的方法 29练习:首先编写一个Person类,并计算创建Person的对象的数量练习:描述一种动物。鸟类和动物有名字和年龄属性,而且会移动。鸟类也有名称、年龄、颜色、属性和移动行为。31定义接收无序数组的方法。要对数组进行排序,请使用二分法来查找指定的元素 32描述了三种类型的汽车,宝马和奔驰,它们都有颜色、名称它还具有运行功能定义一个方法可以接收任何汽车对象,定义一个方法可以返回任何汽车对象描述动物、蛇、鱼和三类。编写一个可以接收任何动物对象的方法,定义一个可以接收任何动物类型对象 的方法,并调用该动物类型对象的特定方法34动物、狗和鱼的描述。动物有名字和颜色两种属性,动物有移动的行为。 199狗的一个独特方法是咬人。鱼特有的行为:吹泡泡 35练习:描述三类图形,矩形和圆形。每张图表都有计算面积和周长的方法。 清楚地描述了三类之间的关系 36描述了一类学生,它有两个属性id和name。学生有学习行为功能,但有些学生也在学习过程中赚钱。普通学生:不能通过学习赚钱的学生 可以通过学习赚钱的学生 37描述了图形、矩形、圆形和三个类。定义接收所有图像对象并打印图形对象的周长和面积的方法。定义一个返回任何图形对象的方法38描述了三类汽车,宝马和奔驰。汽车有颜色和名称它还具有运行

2012-2013java面向对象期末测试题(带答案)

济南大学2009~2010 学年第二学期课程考试试卷 课 程 java 面向对象程序设计 授课教师 考试时间 考试班级 学 号 姓 名 题号 一 二 三 四 五 总 分 审核人 得分 一、填空题(每空2分,共20分) 1.Java 源程序的扩展名是 .java ,经过编译后的程序的扩展名是 .class 。 2.Socket 通常也称为 套接字 ,用于描述 IP 地址 和 端口 。3.线程的优先级在 1 至 10 之间,数值越大 优先级越高 4.构造方法是一种特殊的成员方法,构造方法名与 类名 相同 5.Java 语言只允许单继承,指每个类只能有一个 父类或子类 。 二、选择题(每题2分,共50分) 1.下列哪个概念是面向对象和面向过程程序设计所共有的 ( B ) A 、继承 B 、流程控制 C 、抽象 D 、封装 2.以下关于执行Java 小程序的论述错误的是: ( C ) A 、可以通过浏览器调用嵌入了Java 小程序的HTML 文档 B 、可以通过appletviewer .exe 调用嵌入了Java 小程序的HTML 文档 C 、可以通过java.exe 调用嵌入了Java 小程序的HTML 文档 D 、可以在Java 集成开发环境中调用嵌入了Java 小程序HTML 文档 3.符合对象和类关系的是: ( D ) A 、人和老虎 B 、书和汽车 C 、楼和土地 D 、松树和植物 4.关于选择结构下列哪个说法正确? (B ) A .if 语句和 else 语句必须成对出现 B .if 语句可以没有else 语句对应 … … …… …… …… …… …… … …… …装 …… …… …… … …… …订 …… …… …… … …… …线 …… …… …… … …… …… …… …… …

Java面向对象知识测试__A卷_答案分析

面向对象部分测试题 考试宣言: 同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷! 我们考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业! 本套题共40道不定项选择题,其中单选30道,多选10道。单选2分/题,多选4分/题。多选题不全对半分,全对满分。 1.下面描述函数重写错误的是 A. 要有子类继承或实现 B. 子类方法的权限必须大于等于父类的权限 C. 父类中被private权限修饰的方法可以被子类重写 D. 子类重写接口中的抽象方法,子类的方法权限必须是public的//接口所有方法前面都是默认public abstract 2.下面关于类的设计思路描述错误的是 ( ) A. 根据需求定义类所包含的字段(成员变量) B. 根据面向对象的思想要求,隐藏属性和实现细节之后,可以提供公共的访问方式 C. 封装之后的字段在本类内也必须使用get/set方法//private修饰之后可以 在本类中直接使用,不需要通过get/set方法调用 D. 按需求可以在类中定义若干构造方法

3.分析如下Java代码,如果想在控制台上输出“B类的test()方法”,则在主函数应填 入()。 class A { public void test() { System.out.println("A类的test()方法"); } } class B extends A { public void test() { System.out.println("B类的test()方法"); } public static void main(String args[]) { } } A. A a = new B(); a.test(); B. A a = new A(); a.test(); C. B b = new A(); b.test(); D. new B().test(); 4.关于封装下面介绍错误的是()。 A. 封装隐藏实现细节 B. 封装提高重用性。 C. 封装提高安全性 D. 只有被private修饰才叫做封装//仅仅是封装的一种

《JAVA面向对象程序设计》练习题-参考答案

《JA V A语言程序设计》练习题1 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A. .java B. .class C. .html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 5、给定java 代码如下,编译运行后,输出结果是( )(选择一项)。 public class test { static int i; public int aMethod() { i++; return i; } public static void main (String args[]) { Test test=new Test() ; test.aMethod () ; System.out.println (test.aMethod()) ; } } a) 0 b) 1 c) 2 d) 3 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。

Java面向对象试题集

1、面向对象编程的三大特性是() A) 封装,继承,多态B) 封装,重用,继承 C) 继承,抽象,多态D) 封装,灵活,抽象 2、下面关于构造方法的说法正确的是()(多选) A. 构造方法不能被继承 B. 构造方法不能被重写 C. 构造方法不能被重载 D. 构造方法不能声明为private 3、下面关于类的说法,不正确的是() A) 类是同种对象的集合和抽象B) 类属于Java语言中的引用数据类型 C) 对象是类的实例D) 类就是对象 4、封装性可以对类的成员进行访问级别控制,其中限制最严格的是() A) public B) private C) default D) protected 5、以下哪种类成员修饰符可以在不同包的子类中访问() A) static B) private C) default D) protected 6、Java语言中哪个包是被自动导入的() A) java.util B) https://www.doczj.com/doc/8f11510430.html,ng C) java.default D) java.io 7、有一个类MyClass,它的构造方法声明正确的是() A) void MyClass(int x) {...} B) Myclass(int x){...} C) public MyClass(int x){…} D) public void MyClass(int x){…} 8、对下列程序说法正确的是() public class Test7{ public static void main(String args[]){ String s1 = "Hello world"; String s2 = "Hello"; s2 = s2 + " world"; System.out.println(s1 == s2); } } A) true B) false C) 编译错误D) Hello world 9、在Java中,如果父类中的某些方法不包含任何逻辑,并且需要由子类重写,应该使用 ()关键字来声明父类的这些方法 A) final B) abstract

Java面向对象试题

Java面向对象试题 共30道题,每题3分,满分90分,60分算及格,不及格的要补考。

1) 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要有子类重写,应该使用()关键字来申明父类的这些方法。(选择一项) a) Final b) Static c) Abstract d) Void 2) 给定两个java程序,如下: public interface Face{ int counter = 40; } public class Test implements Face{ private static int counter; public static void main(String[]args){ System.out.println(++counter); } } Test.java 的编译运行结果是()。(选择一项) a) 40 b) 41 c) 0 d) 1 3) 给定java代码,如下: public class Test{

static int i; public int aMethod( ){ i++; return i; } public static void main(String [] args){ Test test = new Test( ); test.aMethod( ); System.out.println(test.aMethod( )); } }编译运行后,输出结果是()。(选择一项) a) 0 b) 1 c) 2 d) 3 4) 给定java代码,如下: abstract class Shape { abstract void draw( ); } 要创建Shape类的子类Circle,以下代码正确的是()。(选择二项) a) class Circle extends Shape{ int draw( ){} }

java面向对象试题

OOP考试题 考试时间:120分钟 考试总分:100分 一、选择题(不定项选择)(2分/题*37 = 74分) 1.类A,B的定义如下: class A { private int a = 100; A() { "A()"); } } class B extends A { private int a = 200; B() { "B()"); } } 运行下面的代码: new B(); 输出的结果是:()。 A. A() 100 B() 200 B. A() 200 B() 200 C. B() 200 A() 100 D. B() 200 A() 200 2. 程序执行的结果是:()。 public class Point{ int y = 7;

public void step(int y) { y += y; } public static void main(String[] args) { Point p = new Point(); (10); } } 3.下面代码运行的结果是() class F{ String name = “name_F”; private int age; public F(){} } class C extends F{ String name = “name_C”; public C(){} public static void main(String[] args){ F f = new C(); C c = new C(); +”“+; } } name_C name_F name_C name_F 4.(单选题)程序的执行结果是:()。 public class Question { private int num; public static void main(String [] args){ Question q = new Question();

Java面向对象程序设计复习题附答案

Java面向对象程序设计复习题 一、选择题 1、下列哪个是Java中的关键字(C )。 A、run B、Integer C、default D、implement 2、下面关于Java.applet.Applet和其祖先类的描述语句哪个不对(B )。 A、Applet是Container的一种 B、Applet是Window的一种 C、Applet是Component的一种 D、Applet是Panel的一种 3、下列类DataOutputStream的构造方法正确的是(A )。 A、new dataOutputStream(new FileOutputStream(“out.txt”)); B、new dataOutputStream(“out.txt”); C、new dataOutputStream(new writer(“out.txt”)); D、new dataOutputStream(new FileWriter(“out.txt”)); 4、在switch(表达式)语句中,表达式的类型不能为(C )。 A、byte B、char C、long D、int 5、在接口MouseMotionListener中方法正确的是(A )。 A、Public void mouseDragged(MouseEvent) B、Public boolean mouseDragged(MouseEvent) C、Public void mouseDragged(MouseMotionEvent) D、Public boolean MouseDragged(MouseMotionEvent) 6、下面是一些异常类的层次关系 https://www.doczj.com/doc/8f11510430.html,ng.Exception https://www.doczj.com/doc/8f11510430.html,ng.RuntimeException https://www.doczj.com/doc/8f11510430.html,ng.IndexOutOfBoundsException https://www.doczj.com/doc/8f11510430.html,ng.ArrayIndexOutOfBoundsException https://www.doczj.com/doc/8f11510430.html,ng.StringIndexOutOfBoundsException 假设有一个方法X,能够抛出两个异常,Array Index和String Index异常,假定方法X中没有try-catch语句,下面哪个答案是正确的。(B ) A、方法X应该声明抛弃ArrayIndexOutOfBoundsException和StringIndexOutOfBounds Exception。 B、如果调用X的方法捕获IndexOutOfBoundsException,则ArrayIndexOutOfBounds Exception和StringIndexOutOfBoundsException都可以被捕获。 C、如果方法X声明抛弃IndexOutOfBoundsException,则调用X的方法必须用Try-catch 语句 捕获。 D、方法X不能声明抛弃异常。 7、现有一变量声明为boolean aa;下面赋值语句中正确的是( D )。 A、aa=0 B、aa=True C、aa="true" D、aa=false 8、某类Example的main()方法参数为args,当输入数据Java Example cat时,args[0]的值为(A )。 A、cat B、Java C、example D、null 9、String s1=new String(“Java”);String s2=new String(s1)则下列哪个说法是正确的(C )。 A、表达式s1==s2为真 B、s1和s2是同一个对象

Java面向对象选择测试试题

Java面向对象选择试题

————————————————————————————————作者:————————————————————————————————日期:

选择正确的答案 1) 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要有子类重写,应该使用(c)关键字来申明父类的这些方法。 a) Final b) Static c) Abstract d) Void 2) 给定两个java程序,如下: public interface Face{ int counter = 40; } public class Test implements Face{ private static int counter; public static void main(String[]args){

System.out.println(++counter); } } Test.java 的编译运行结果是(D )。 a) 40 b) 41 c) 0 d) 1 3) 给定java代码,如下: public class Test{ static int i; public int aMethod( ){ i++; return i; }

public static void main(String [] args){ Test test = new Test( ); test.aMethod( ); System.out.println(test.aMethod( )); } }编译运行后,输出结果是(C)。 a) 0 b) 1 c) 2 d) 3 4) 给定java代码,如下: abstract class Shape { abstract void draw( ); }

Java面向对象选择试题

选择正确的答案 1) 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要有子类重写,应该使用(c)关键字来申明父类的这些方法。 a) Final b) Static c) Abstract d) Void 2) 给定两个java程序,如下: public interface Face{ int counter = 40; } public class Test implements Face{ private static int counter; public static void main(String[]args){

System.out.println(++counter); } } Test.java 的编译运行结果是(D )。 a) 40 b) 41 c) 0 d) 1 3) 给定java代码,如下: public class Test{ static int i; public int aMethod( ){ i++; return i; }

public static void main(String [] args){ Test test = new Test( ); test.aMethod( ); System.out.println(test.aMethod( )); } }编译运行后,输出结果是(C)。 a) 0 b) 1 c) 2 d) 3 4) 给定java代码,如下: abstract class Shape { abstract void draw( ); }

要创建Shape类的子类Circle,以下代码正确的是(BD)。 a) class Circle extends Shape{ int draw( ){} } b) abstract class Circle extends Shape{ } c) class Circle extends Shape{ void draw( ); d) class Circle extends Shape{ void draw( ){} } 5) 给定java代码,如下: class Parent{ public void count( ){

java面向对象考题和答案

1.下面代码的输出结果是: public class Main { public static void main(String[] args) { int n = 100; int m = 200; System.out.println(f(n,m)); System.out.println(n); } public static int f(int m, int n) { n = m+n; return n; } } A.300 300 B.100 100 C.300 100 D.100 300 2.程序执行的结果是: public class Test { public static void main(String[] args) { int x = 6; Test p = new Test(); p.doStuff(x); System.out.println(" main: x = " + x); } void doStuff(int x) { System.out.println(" doStuff:x =" + x++); } } A.doStuff:x =7 main: x = 7 B.doStuff:x =7 main: x = 6 C.doStuff:x =6 main: x = 7 D.doStuff:x =6 main: x = 6

3.下列关于JVM的内存结构描述正确的是: A.类的各种信息在方法区中保存 B.堆用于存放程序运行过程当中所有的局部变量 C.栈用于存储使用new关键字创建的对象 D.数组属于JVM的内存结构 4.下列代码的输出结果是: public class Test { public void print(char c) { System.out.println("c"); } public void print(int i) { System.out.println("i"); } public void print(double d) { System.out.println("d"); } public void print(String s) { System.out.println("s"); } public static void main(String[] args) { Test test=new Test(); test.print('5'); } } A.c B.i C.d D.s 5.程序执行的结果是: public class Test { String name="Tom"; public Test(String name){ name=name; } public static void main(String [] args){ Test t = new Test("Jack"); System.out.println(https://www.doczj.com/doc/8f11510430.html,); } } A.null B.Tom C.Jack D." "

《Java面向对象程序设计》考试卷及答案带注释

一、单选题(每小题1分,共30分) 1.在MyEclipse中,()视图可以将项目中包含的文件及层次结构展示出来。C A) Package B)Declaration C)Navigator D) Console 2.下列标识符中,正确的是()。C A)class B) 123_rr C) _lei D) test&12 3.下列的()选项可以正确用以表示八进制值8。0x代表16进制,0代表8进制 D A)0x8 B)0x10 C)08 D)010 4.以下哪个不是Java的原始数据类型()D A) int B) boolean C) float D) Char引用数据类型 5.下列有关Java布尔类型的描述中,正确的是()A A)一种基本的数据类型,它的类型名称为boolean B)用int表示类型 C)其值可以赋给int类型的变量 D)有两个值,1代表真,0代表假 6.在Java中,不属于整数类型变量的是( ) A A) double 浮点型B) long C) int D) byte 7.以下do-while语句构成的循环执行次数是()。B int k=0; do { ++k ;}while(k<1); A) 一次也不执行B) 执行1次C) 无限次D) 有语法错误,不能执行 8.表达式(1/0<1)&& (12==0) 的值为()。逻辑运算结果只有true和false两种 B A) true B) false C) 0 D) 运行时抛出异常 9.以下()表达式不可以作为循环条件 A A) i=5 B )i<3 C) count==i D) bEqual=str.equals("q") 10.下列数组初始化正确的是() D A) int score[5] = {90,12,34,77,56}; B) int[5] score = new int[]; C) int[] score = new int[5]{90,12,34,77,56}; D) int score[] = new int[]{90,12,34,77,56}; 11.若有定义:byte[] x={11,22,33,-66}; 其中0≤k≤3,则对x数组元素错误的引用是() C A) x[5-3] B) x[k] C) x[k+5] D) x[0] 12.以下代码的输出结果是()。 D public static void main(String[] args){ for(int i=1;i<=10;i++){ if(i%2==0||i%5==0){ continue; } System.out.print(i + "\t"); } } A) 1 B) 1 3 4 C) 1 3 5 7 9 D) 1 3 7 9 13.下列()选项的java源文件代码片段是不正确的。 B A) package testpackage; B) import java.io.* ; public class Test{} package testpackage;

Java面向对象编程练习题

【练习题】01.类的成员变量: 猜数字游戏:一个类A有一个成员变量v,有一个初值100。定义一个类,对A 类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。 【练习题】02.类的成员变量: 请定义一个交通工具(Vehicle)的类,其中有: 属性:速度(speed),体积(size)等等 方法:移动(move()),设置速度(setSpeed(int speed)),加速speedUp(),减速speedDown()等等. 最后在测试类Vehicle中的main()中实例化一个交通工具对象,并通过方法给它初始化speed,size的值,并且通过打印出来。另外,调用加速,减速的方法对速度进行改变。 【练习题】03.类的成员变量与方法、构造方法 在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。 定义名为MyTime的类,其中应有三个整型成员:时(hour),分(minute),秒(second),为了保证数据的安全性,这三个成员变量应声明为私有。 为MyTime类定义构造方法,以方便创建对象时初始化成员变量。 再定义diaplay方法,用于将时间信息打印出来。 【练习题】04.构造方法 编写Java程序,模拟简单的计算器。 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。编写构造方法,赋予n1和n2初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成员方法,分别对两个成员变量执行加、减、乘、除的运算。 在main方法中创建Number类的对象,调用各个方法,并显示计算结果。 【练习题】05.构造方法: 编写Java程序,用于显示人的姓名和年龄。 定义一个人类(Person),该类中应该有两个私有属性,姓名(name)和年龄(age)。定义构造方法,用来初始化数据成员。再定义显示(display)方法,将姓名和年龄打印出来。 在main方法中创建人类的实例,然后将信息显示。 【练习题】06.get方法和set方法 定义一个类,该类有一个私有成员变量,通过构造方法将其进行赋初值,并提供该成员的getXXX()和setXXX()方法 【练习题】07.构造方法与重载

Java面向对象习题

选择题 1、下列关于变量的叙述哪个是错的?() A. 实例变量是类的成员变量。 B. 在方法中定义的局部变量在该方法被执行时创建。 C. 实例变量用关键字static声明。 D. 局部变量在使用前必须被初始化。 2、在Java语言中,下列哪个包是编译器自动导入的?() A. java.applet B. https://www.doczj.com/doc/8f11510430.html,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{}

java面向对象考试题

public static void main (String[] args){ String[] fileNames = { "abc.txt", "bcd.exe", "cde.exe","def.dat","efg.exe" }; for (String fileName : fileNames) { if (fileName.endsWith(".exe")) { System.out.print(fileName.substring(0, https://www.doczj.com/doc/8f11510430.html,stIndexOf(".exe"))+" "); } } } fileName.endsWith(".exe") 判断是否已".exe"结尾 substring(0,4) 截取0-3的字符串,不包含4 lastIndexOf(".exe") 获取".exe"最后一次出现的位置 答案:bcd cde efg 第二题: public static void go(Long n) { System.out.println("Long"); } public static void go(Short n) { System.out.println("Short"); } public static void go(int n) { System.out.println("int"); } public static void main(String[] args) { short y = 6; long z = 7; go(y); go(z); } 虽然y是short型的,但是编译器把它转换为int型 答案:int Long

Java面向对象基础试题汇总

一、【必做题】 Ⅰ.选择题 1、列选项中哪个是类public class Test { }的默认构造方法___?(知识点:构造器) A. Test(; B. Test(void; C. public Test(; D. public Test(void; E. public void Test(; 2、给定下列代码的执行结果是____?(知识点:构造器) public class A { void A( { System.out.println(“Class A”; } public static void main(String[] args { new A(; } } A. Class A B. 在第2行处抛出异常 C. 编译错误 D. 在第6行处抛出异常 E. 代码执行后没有输出 3、给定以下代码:(知识点:构造器) 1. public class ConstOver { 2. public ConstOver (int x, int y, int z { 3. }

4. } 下列选项中,哪些可以在ConsOver类中定义成重载的构造方法____: A. ConstOver ( { } B. int ConstOver ( { } C. ConstOver (int z, int y, byte x { } D. Object ConstOver (int x, int y, int z { } E. void ConstOver (byte x, byte y, byte z { } 4、以下代码的执行结果是_____?(知识点:static使用) A. 编译失败 B. 编译成功,输出“0” C. 编译成功,输出“1” D. 编译成功,输出“2” 5、以下代码的执行结果是____?(知识点:类的成员及方法中的变量) A. 代码编译成功,并且打印“s=” B. 代码编译成功,并且打印“s=null” C. 代码编译失败,因为s为被初始化 D.代码编译失败,因为s不可以被引用

相关主题
文本预览
相关文档 最新文档