Java面向对象测精彩试题(一)
Java面向对象测试题(一)

Java面向对象测试题(一)注:测试时间:3小时编程题在电脑上编写,保存在已学生名字为文件名的文件夹中一、选择题(共30分,每题1分<多选、少选、错选不得分>)1、下面有关Java异常处理模型的说法错误的是()。
a)一个try块只能有一条catch语句b)一个try块中可以不使用catch语句c)Catch块不能单独使用,必须始终与try块在一起d)Finally块不能单独使用,必须始终与try块在一起2、下列选项中关于Java中super关键字的说法错误的是()。
a)super关键字是在子类对象内部指代其父类对象的引用b)super关键字不仅可以指代子类的直接父类,还可以指代父类的父类c)子类可以通过super关键字调用父类的方法d)子类可以通过super关键字调用父类的属性3、下列选项中关于Java中this关键字的说法错误的是()。
a)this是在对象内部指代对象自身的引用b)this关键字可以在类中的任何位置使用c)this只和特定的对象关联,而不和类关联d)同一个类的不同对象有不同的this4、在Java中,Object类是所有类的父亲,用户自定义类默认扩展自Object类,下列选项中的()方法不属于Object类的方法。
a)equals(Object obj)b)getClass()c)toString()d)trim()5、给定如下Java代码,关于super的用法,以下描述正确的是()。
class C extends B{public C(){super();}}a)用来调用类B中定义的super()方法b)用来调用类C中定义的super()方法c)用来调用类B的无参构造方法d)用来调用类B中第一个出现的构造方法6、在Java中,有如下两个类Student和Person。
如果Student是Person的子类,则下列声明对象x的语句中错误的是()。
a)Person x = new Student()b)Person x = new Person()c)Student x = new Person()d)Student x = new Student()7、下列对Java中的继承描述错误的说法是()。
JAVA考核题面向对象选择题答案

北润JAVA考核-面向对象第一部分英语测试(每题分,共分)第二部分知识点测试(分)一、选择题(每题2分,共110分)1.下面关于变量及其作用范围的陈述哪个是不对的?(B )A.实例变量是类的成员变量。
B.实例变量用关键字static声明。
C.在方法中定义的局部变量在该方法被执行时创建。
D.局部变量在使用前必须被初始化。
2.下面哪条语句把方法声明为抽象的公共方法?(B )A.public abstract method(); B.public abstract void method();C.public abstract void method(){} D.public void method() extends abstract;3.若在某一个类定义中定义有如下的方法:final void aFinalFunction( ){}则该方法属于( C )。
A、本地方法B、静态方法C、最终方法D、抽象方法4.main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B )。
A、public static void main()B、public static void main(String[ ] args)C、public static int main(String[ ] args)D、public void main(String arg[ ])5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。
这种面向对象程序的特性称为( C )。
A、隐藏B、覆盖C、重载D、Java不支持此特性6.下列关于构造方法的叙述中,错误的是(C )A.Java语言规定构造方法名与类名必须相同B.Java语言规定构造方法没有返回值,但不用void声明C.Java语言规定构造方法不可以重载D.Java语言规定构造方法只能通过new自动调用7.关于被私有访问控制符private修饰的成员变量,以下说法正确的是(C )A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被两种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D.只能被同一个包中的类访问8.类Test1定义如下:1. public class Test1{2.public floataMethod(float a, float b){}3.4.}将以下哪种方法插入行3是不合法的。
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. 构造函数的返回类型是voidC. 构造函数和类有相同的名称,并且不能带任何参数D. 一个类可以定义多个构造函数5) 下面Java代码的运行结果是()。
class Penguin {private String name=null; // 名字private int health=0; // 健康值private String sex=null; // 性别public void Penguin() {health = 10;sex = "雄";System.out.println("执行构造方法。
Java面向对象编程练习试题包括答案.docx

【练习题】 01. 类的成员变量:猜数字游戏:一个类 A 有一个成员变量 v,有一个初值 100。
定义一个类,对 A 类的成员变量 v 进行猜。
如果大了则提示大了,小了则提示小了。
等于则提示猜测成功。
import .*;class A{int v = 100;A(){=v;}}public class b01{public static void main(String args[]){A a = new A();Scanner intput = new Scanner;int intputvalue = ();if(intputvalue>"你的输入大于这个值 ");if(intputvalue<"你的输入小于这个值 ");if(intputvalue=="猜测成功 ");}}【练习题】 02. 类的成员变量:请定义一个交通工具 (Vehicle)的类,其中有:属性:速度 (speed) ,体积 (size)等等方法:移动 (move()) ,设置速度 (setSpeed(int speed)),加速speedUp(),减速speedDown()等等 .最后在测试类Vehicle 它初始化 speed,size 对速度进行改变。
中的 main() 中实例化一个交通工具对象,并通过方法给的值,并且通过打印出来。
另外,调用加速,减速的方法class Vehicle{int speed;int size;void move(){};void setSpeed(int speed){ = speed;}void speedUp(){speed = speed+1;=speed;}void speedDown(){speed = speed-1;=speed;}}public class b01{ public static void main(String args[]){Vehicle a = new Vehicle();(55);=80;();"Speed:"++"\nsize:"+;}}【练习题】 03. 类的成员变量与方法、构造方法在程序中,经常要对时间进行操作,但是并没有时间类型的数据。
Java面向对象程序设计模拟试题1及答案

Java面向对象程序设计模拟试题1一、单项选择题(本大题共15小题,每小题1分,共15分)1. Java语言属于A. 机器语言B. 高级语言C. 自然语言D. 汇编语言2. Java源文件的扩展名是A. docB. exeC. javaD. class3. Java语言的字符使用的字符编码是A. ASCIIB. UnicodeC. UTF-8D. GB23124. Java中int类型所占字节数是A. 1B. 2C. 4D. 85. 给定下面代码段,程序运行结果是public class Foo{public static void main(String[] args){int i = 1;int j = i++;if((++i > j) && (i++ == j)){i += j;}System.out.println("i = "+i) ;}}A. i = 1B. i = 2C. i = 3D. i = 4 if内的判断也会对数值有影响6. 设有Circle类,执行下面语句后,哪个对象可以被垃圾回收器回收Circle a = new Circle();Circle b = new Circle();Circle c = new Circle();a = b;a = c;c = null;A.原来a所指的对象B.原来b所指的对象C.原来b和c所指的对象D.原来c所指的对象7. 下列程序段的运行结果为int index = 1;int foo[] = new int[3];int bar = foo[index];int baz = bar + index;A. baz 的值为0B. baz 的值为1C. baz 的值为2D. 抛出一个异常8. 执行下列语句后输出的结果是String s = "\"Hello,World!\"";System.out.println(s.length());A. 12B. 14C. 16D. 189. 下列代码执行后输出foo的结果为int index = 1;String[] test = new String[3];String foo = test[index];System.out.println(foo);A. ""B. nullC. 抛出一个异常D. 代码不能编译10. 下面程序运行结果为class Super{public int i = 0;public Super(String text){i = 1;}}public class Sub extends Super{public Sub(String text){i = 2;}public static void main(String[] args){Sub sub = new Sub("Hello");System.out.println(sub.i);}}A. 该程序有编译错误B. 编译成功输出0C. 编译成功输出1D. 编译成功输出211.下面代码在运行时会产生什么异常int a[] = {1,2,3,4,5};System.out.println(a[5]);A. ArrayIndexOutOfBoundsExceptionB. IndexOutOfBoundsExceptionC. ObjectClastExceptionD. NullPointerException12.有下列一段代码,执行后输出结果为。
Java面向对象试题_百度文库

Java面向对象试题共30道题,每题3分,满分90分,60分算及格,不及格的要补考。
1 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要有子类重写,应该使用()关键字来申明父类的这些方法。
(选择一项a Finalb Staticc Abstractd Void2 给定两个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 40b 41c 0d 13 给定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 0b 1c 2d 34 给定java代码,如下:abstract class Shape{abstract void draw( ;}要创建Shape类的子类Circle,以下代码正确的是()。
(选择二项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;}}编译运行,结果是()。
java面向对象编程练习题及答案

java面向对象编程练习题及答案一、选择题1. 在Java中,以下哪个关键字用于定义类?A. structB. classC. interfaceD. enum2. Java中的继承是:A. 多重继承B. 单一继承C. 无继承D. 可选继承3. 以下哪个是Java中的访问修饰符?A. publicB. privateC. protectedD. 所有选项都是4. 以下哪个不是Java对象的三个基本特征?A. 封装B. 继承C. 多态D. 线程5. 以下哪个方法用于获取对象的内存地址?A. hashCode()B. equals()C. getClass()D. toString()二、简答题1. 解释Java中的封装是什么,并给出一个封装的例子。
2. 描述Java中的继承是如何工作的,并给出一个继承的例子。
3. 解释Java中的多态性,并给出一个多态性的例子。
三、编程题1. 创建一个名为`Car`的类,它具有以下属性:- 品牌(String)- 型号(String)- 年份(int)并为这些属性提供getter和setter方法。
2. 创建一个名为`ElectricCar`的类,它继承自`Car`类,并添加以下属性:- 电池电量(int)实现`ElectricCar`类,并重写`toString()`方法,以显示电动汽车的详细信息。
3. 创建一个名为`VehicleTest`的类,它包含`main`方法。
在`main`方法中,创建`Car`和`ElectricCar`的实例,并打印它们的状态。
四、代码分析题1. 阅读以下Java代码片段,并解释它的作用:```javapublic class Person {private String name;private int age;public Person(String name, int age) { = name;this.age = age;}public String getName() {return name;}public void setName(String name) { = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}```2. 阅读以下Java代码片段,并指出可能的错误:```javapublic class Animal {public void speak() {System.out.println("The animal makes a sound");}}public class Dog extends Animal {@Overridepublic void speak() {System.out.println("The dog barks");}}public class Cat extends Animal {@Overridepublic void speak() {System.out.println("The cat meows");}}public class TestAnimals {public static void main(String[] args) {Animal myDog = new Dog();Animal myCat = new Cat();myDog.speak();myCat.speak();}}```五、论述题1. 论述Java面向对象编程中接口与抽象类的区别,并给出使用场景。
2.Java面向对象知识测试 - 含答案

单选题:(每道题目2分)1:下列有关类、对象和实例的叙述,正确的是哪一项?()A.类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别B.对象是类的抽象,类是对象的具体化,实例是对象的另一个名称C.类是对象的抽象,对象是类的具体化,实例是类的另一个名称D.类是对象的抽象,对象是类的具体化,实例是对象的另一个名称2:类Student中成员变量声明正确的是哪一项? ()A.class Student{name;age;}B.class Student{String name = 1.0;int age = “26”;}C.class Student{String name;int age;}D.class Student{String name,int age;}3:类Student中成员方法声明正确是哪一项?()A:class Student{public show(){}}B:class Student{public void show();}C:class Student{public void show(){}}D:class Student{show(){}}4:类Student中构造方法声明正确的是哪一项? () A:class Student{public Student()}B:class Student{public Student(){}}C:class Student{public void Student(){}}D:class Student{new Student(){}}5:下列哪一项不是面向对象的三大特征之一? ()A:封装B:抽象C:继承D:多态6:下列关于封装说法不正确的是?()A:封装可以提高代码的安全性。
B:封装是指隐藏实现细节,提高公共的访问方式。
C:类或者方法也是封装的一种体现。
D:仅仅private修饰的内容才是封装的体现。
7:下列哪个方法和int sum(int a,int b)是重写方法?() A:public void sum(int a,int b)B:public int sum(int a,int b)C:int sum(int a,int b,int c)D:void sum(int c,int b)8:下列程序的运行结果是:()class Test{private static int x = 10;public void show(int x){x++;System.out.println(x);}public static void main(String[] args){int x = 20; //局部变量覆盖成员变量Test t = new Test();t.show(x);}}A:10B:21C:11D:209:在子类中调用父类中被重写的方法时需要使用哪个关键字?() A.thisB.newC.superD.以上都不是10:如果想一个类不能被子类继承的话,用下列哪个修饰符? () A:staticB:abstractC:privateD:final11:有如下两个类,在main方法中下面哪个做法是错误的?() class Animal{}class Dog extends Animal{}A:Animal a = new Animal();B:Dog d = new Dog();C: Animal a = new Dog();D:Dog d = new Animal();12:下列有关抽象类的叙述正确的是哪项?() A:抽象类中一定含有抽象方法B:抽象类既能被实例化也能被继承C:抽象类的声明必须包含abstract关键字D:抽象类中不能有构造方法13:下列有关接口的叙述错误的是哪项?() A:接口中只能包含抽象方法和常量B:一个类可以实现多个接口C:具体类实现接口时必须实现其中的方法D:接口不能被继承14:下列程序的运行结果是:()class Fu{public int num = 10;}class Zi extends Fu{public int num = 20;}class Testpublic static void main(String[] args) {Fu f = new Zi();System.out.println(f.num);Zi z = (Zi)f;System.out.println(z.num);}}A:10,10B:20,20C:10,20D:20,1015:下列程序的运行结果是:()class Fu{public void show(){System.out.println("fu show");}}class Zi extends Fu{public void show(){System.out.println("zi show");}public void method(){System.out.println("zi method");}}class Test{public static void main(String[] args){Fu f = new Zi();f.method();}}A:fu showB:zi showC:编译报错D:zi method16:关于代码块说法错误的是?()A:静态代码块在类加载的时候执行一次,在创建对象的时候不在执行了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实用文档Java面向对象测试题(一)注:测试时间:3小时编程题在电脑上编写,保存在已学生名字为文件名的文件夹中一、选择题(共30分,每题1分<多选、少选、错选不得分>)1、下面有关Java异常处理模型的说法错误的是()。
a)一个try块只能有一条catch语句b)一个try块中可以不使用catch语句c)Catch块不能单独使用,必须始终与try块在一起d)Finally块不能单独使用,必须始终与try块在一起2、下列选项中关于Java中super关键字的说法错误的是()。
a)super关键字是在子类对象内部指代其父类对象的引用b)super关键字不仅可以指代子类的直接父类,还可以指代父类的父类c)子类可以通过super关键字调用父类的方法d)子类可以通过super关键字调用父类的属性3、下列选项中关于Java中this关键字的说法错误的是()。
a)this是在对象内部指代对象自身的引用b)this关键字可以在类中的任何位置使用c)this只和特定的对象关联,而不和类关联d)同一个类的不同对象有不同的this4、在Java中,Object类是所有类的父亲,用户自定义类默认扩展自Object类,下列选项中的()方法不属于Object类的方法。
a)equals(Object obj)b)getClass()c)toString()d)trim()5、给定如下Java代码,关于super的用法,以下描述正确的是()。
class C extends B{public C(){super();}}a)用来调用类B中定义的super()方法b)用来调用类C中定义的super()方法c)用来调用类B的无参构造方法d)用来调用类B中第一个出现的构造方法6、在Java中,有如下两个类Student和Person。
如果Student是Person的子类,则下列声明对象x的语句中错误的是()。
a)Person x = new Student()b)Person x = new Person()c)Student x = new Person()d)Student x = new Student()7、下列对Java中的继承描述错误的说法是()。
a)子类至少有一个基类b)子类可作为另一个子类的基类c)子类可以通过this关键字来访问父类的私有属性d)子类继承父类的方法访问权限保持不变8、Try{}里有一个return语句,那么紧跟在这个try后的finally{}里的代码会不会被执行,什么时候被执行?a)不会执行b)会执行,在return前执行c)会执行,在return后执行d)会执行,可能在return前执行,也可能在return后执行9、下列属于方法重载好处的是()。
<选择两项>a)实现多态b)方法名的复用c)提高程序运行速度d)使用方便,提高可读性10、面向对象方法的多态性是指()。
a)一个类可以派生出多个特殊类b)一个对象在不同的运行环境中可以有不同的变体c)拥有相同父类或接口的不同对象可以以适合自身的方式处理同一件事d)一个对象可以是由多个其他对象组合而成的11、Dog是Animal的子类,下面代码错误的是()。
a)Animal a = new Dog();b)Animal a = (Animal)new Dog();c)Dog d = (Dog)new Animal();d)Object o = new Dog();12、下面定义Java的常量,正确的是()。
<多选>a)public static final double PI = 3.14;b)public final static double PI = 3.14;c)final public static double PI = 3.14;d)static public final double PI = 3.14;13、这段代码的输出结果是()。
try{System.out.print(“try,”);return;}catch(Exception e){System.out.print(“catch,”);}finally{System.out.pirnt(“finally”);}a)try,b)try,catch,c)try,finallyd)try,catch,finally14、这个方法的返回值是()。
Public int count(){try{return 5/0;}catch(Exception e){return 2*3;}finally{return 3;}}a)0b)6c)3d)程序错误15、下面代码的运行结果是()。
public class Car{public void run(){System.out.println(“汽车在跑”);}}public class Benz extends Car{public void run(){System.out.println(“奔驰在跑”);}}public static void main(String[] args){ Car car = (Car)(new Benz());car.run();}a)汽车在跑b)奔驰在跑c)无法编译d)运行时将抛出异常16、下面的异常处理代码的输出结果是()public static void main(String[] arg){try{int result = 6/0;System.out.print("try,");} catch(ArithmeticException e1) {System.out.print("ArithmeticException异常,");throw new Exception();} catch(Exception e2) {System.out.print("Exception异常,");} finally {System.out.print("finally");}}a)程序编译错误b)ArithmeticException异常,finallyc)ArithmeticException异常, Exception异常, finallyd)try, ArithmeticException异常, Exception异常, finally17、关于Java的接口,下面说法错误的是()a)可以被继承b)可以只定义常量,而没有任何方法c)可以这样定义常量: public int EVEREST = 8848;d)方法的参数不可以是接口18、能与public void methodA(){ }方法形成重载的有()。
a)private void methodA(){ }b)private int methodA(){ return 1;}c)public void methodA(int a){ }d)public void methodA() throws Exception{ }19、子类中能与父类public void methodA(int a){ }方法形成重写的有()。
a)public int methodA(int a){return 1;}b)public void methodA(int a) throws Exception{ }c)private void methodA(int a){ }d)public void methodA(int b){ }20、关于构造方法,下面说法错误的是()<选择两项>a)父类只有一个带参的构造方法,子类必须显示声明带参构造方法b)子类无参构造方法中没有写super();不会调用父类无参构造方法c)子类无参构造方法不可以用super(int a);调用父类对应的带参构造方法d)实例化一个类的对象时,一定会先调用ng.Object的构造方法21、关于Java的异常和异常处理,下面说法错误的是()。
<多选>.a)try/catch/finally块里都可以嵌套try/catch/finallyb)一个try可以对应多个catchc)如果发生的异常没有被捕捉,异常将被系统忽略d)异常处理时可以只用try块。
22、关于Java的继承,下面说法错误的是()<多选>a)接口可以继承接口b)子类不可以继承父类的私有属性和私有方法c)所有类都是ng.Object的子类,但是不可以这样写:public class Earth extends Object{}d)一个类不可以继承(extends)另一个类,同时又实现(implements)一个接口23、阅读下面的代码,正确的说法是()Class Foo {int num;Baz comp = new Baz();}class Bar {Boolean flag;}class Baz extends Foo {Bar thing = new Bar();double limit;}a)Bar是Baz子类b)Foo 包含 Barc)Baz是Foo子类d)Foo是Baz子类e)Baz包含Bar24、作为Java应用程序入口的main方法,其声明格式是()A.public static int main(String args[]) B.public static void main(String args[])C.public void main(String args[])D.public int main(String args[])25、下面命令正确的是()A.java AppFirst.java B.java AppFirst C.java appfirst.class D.javac AppFirst26、下面哪个单词是Java语言的关键字()A.False B.FOR C.For D.for27、执行下面程序后,哪个结论是正确的()int a, b, c;a=1; b=3; c=(a+b>3 ? ++a : b++);A.a的值为2,b的值为3,c的值为1B.B.a的值为2,b的值为4,c的值为2C.a的值为2,b的值为4,c的值为1D.a的值为2,b的值为3,c的值为228、设有定义语句“int a[]={66,88,99};”,则以下对此语句的叙述错误的是()A.定义了一个名为a的一维数组 B.a数组有3个元素C.a数组的元素的下标为1~3 D.数组中的每个元素是整数29、下列类的声明中不合法的是。
A.class People(){…}B.class 植物{…}C.class A{…}D.public class 共有类{…}30、在JAVA 中,下列说法正确的是:。