Java面向对象知识测试A卷答案

合集下载

2.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:静态代码块在类加载的时候执行一次,在创建对象的时候不在执行了。

面向对象测试题及答案

面向对象测试题及答案

面向对象测试题及答案一、选择题(每题2分,共20分)1. 面向对象编程(OOP)的核心概念不包括以下哪一项?A. 类B. 继承C. 多态D. 过程2. 在Java中,以下哪个关键字用于定义类?A. classB. typeC. structD. interface3. 下列哪个选项不是Java中访问控制的关键字?A. publicB. privateC. protectedD. global4. 封装是面向对象编程的一个重要特性,它主要指的是:A. 将数据和操作数据的方法组合在一起B. 将所有数据都设为公开访问C. 只允许通过特定的方法访问数据D. 将数据和方法分离5. 在Java中,以下哪个不是构造方法的特点?A. 与类名相同B. 没有返回类型C. 可以重载D. 可以被继承6. 继承在面向对象编程中允许:A. 一个类只能继承一个类B. 一个类可以继承多个类C. 一个类可以继承多个接口D. 一个类可以同时继承多个类和接口7. 接口在Java中的主要作用是:A. 定义类B. 实现多继承C. 定义方法的实现D. 定义方法的签名8. 以下哪个是Java中实现多态的方式?A. 继承B. 接口C. 重载D. 重写9. 抽象类在Java中不能:A. 被实例化B. 包含抽象方法C. 包含具体方法D. 被继承10. 下列哪个不是Java集合框架中接口?A. ListB. SetC. MapD. Array二、简答题(每题5分,共30分)1. 简述面向对象编程的三大特性。

2. 解释什么是多态,并给出一个Java中多态的例子。

3. 什么是封装?封装在Java中是如何实现的?4. 什么是接口?接口和抽象类有什么区别?5. 什么是构造方法?构造方法的作用是什么?6. 什么是继承?继承在Java中是如何实现的?三、编程题(每题25分,共50分)1. 编写一个Java程序,定义一个名为`Car`的类,包含以下属性和方法:- 属性:品牌(String类型),颜色(String类型),速度(int 类型)- 方法:启动汽车(startCar),加速(accelerate),减速(decelerate)2. 在上述`Car`类的基础上,创建一个名为`ElectricCar`的子类,继承`Car`类,并添加一个额外的属性:电池电量(int类型),并重写`startCar`方法以显示电动汽车启动的信息。

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

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

面向对象部分测试题考试宣言:同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷!我们考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。

单选2分/题,多选4分/题。

多选题不全对半分,全对满分。

1.下面描述函数重写错误的是A. 要有子类继承或实现B. 子类方法的权限必须大于等于父类的权限C. 父类中被private权限修饰的方法可以被子类重写D. 子类重写接口中的抽象方法,子类的方法权限必须是public的//接口所有方法前面都是默认public abstract2.下面关于类的设计思路描述错误的是 ( )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.关于封装下面介绍错误的是()。

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是不合法的。

mstanfu的JAVAOOP模拟题带答案

mstanfu的JAVAOOP模拟题带答案

5. 若已有类A和接口D,现要求类B继承类A,类C继承类B且实现D接 口,如下的写法中正确的是( )。 A. class A extends B{……} B. class C extends A, B implements D。 C. class C extends B implements D D. class C implements D extends B。 6. 以下关于抽象类的描述中,正确的是()。 A. 抽象类没有构造方法。 B. 抽象类必须提供抽象方法。 C. 有抽象方法的类一定是抽象类,而抽象类不一定有抽象方法 D. 抽象类可以通过new关键字实例化。 7. 下列关于子类与父类中构造方法的描述,正确的是()。 A. 构造方法不能重载 B. 构造方法可以重写 C. 子类无法继承父类的构造函数 D. 子类中无法调用父类的构造函数 8. 以下的异常类型属于运行时异常的是:()。 A. SQLException B. IOException C. NullPointerException D. ClassCastException 9. 以下对异常的描述不正确的是( )。 A. 异常分为Error和Exception两类 B. Throwable是所有异常类的父类 C. 在程序中不管是Error类还是Exception类,都可以在捕获后 进行异常处理 D. Exception是RuntimeException和RuntimeException之外异常 的父类 10. 以下对于catch语句的描述中,正确的是() A. try语句中必须要带上catch语句 B. catch语句可以脱离try独立使用 C. 多个catch语句同时存在时,程序会从前往后依次地执行每 条catch子句,一旦捕获异常,转而执行其中的语句,执行 完毕后不再继续执行。 D. 在多条catch语句中,捕获范围大的应当放在前面,捕获范 围小的放在后面,这样可以保证任何一条异常都能够被捕

《Java面向对象编程》期终考试试卷(A卷)及答案

《Java面向对象编程》期终考试试卷(A卷)及答案

适用专业:一、选择题(本大题共20小题,每小题2分,共40分。

请将选择题答案填入下方的表格内)1、Java源文件和编译后的文件扩展名分别为()。

A、.class和 .javaB、.java和 .classC、.class和 .classD、.java和 .java2、一个可以独立运行的Java应用程序( )。

A、可以有一个或多个main方法B、最多只能有两个main方法C、可以有一个或零个main方法D、只能有一个main方法3、以下代码中,this是指( )。

class bird{int x,y;void fly(int x,int y){this.x=x;this.y=y;}}A、 birdB、 flyC、bird或flyD、不一定4、以public修饰的类如:public class Car{…}则Car( )A、可被其它程序包中的类使用B、仅能被本程序包中的类使用C、不能被任意其它类使用D、不能被其它类继承5、下面关于构造函数的说法不正确的是()。

A、构造函数也属于类的方法,用于创建对象的时候给成员变量赋值。

B、构造函数不可以重载。

C、构造函数没有返回值。

D、构造函数一定要和类名相同。

6、要设置一个类的属性为私有的,应使用关键字()。

A、publicB、privateC、pretectedD、 static7、选出在Java中有效的注释声明()。

(选择二项)A、//This is a commentB、*/This is a commentC、/This is a commentD、/*This is a comment*/8、( )是拥有属性和行为或方法的实体。

A. 对象B. 类C. 方法D. 构造方法9、在Java中,当在类中定义两个或更多方法,它们有相同的名称而参数项不同时,这称为()。

A、继承B、多态性C、构造方法D、方法重载10、下面哪项是错误的?( )A. 使用(==)比较String对象时,如果String对象包含相同的值,则比较结果为真。

JAVA语言与面向对象程序设计课程复习考试试题及答案A

JAVA语言与面向对象程序设计课程复习考试试题及答案A

《JAVA语言与面向对象程序设计》复习纲要A一、单项选择题1. Java application中的主类需包含main方法,以下哪项是main方法的正确形参?()A、String argsB、String args[]C、Char argD、StringBuffer args[]2.下列的哪个选项可以正确用以表示八进制值8?()。

A、0x8B、0x10C、08D、0103. 设 int x=1,float y=2,则表达式 x / y的值是()。

A、0B、1C、2D、以上都不是4. 若有定义:byte[] x={11,22,33,-66};其中0≤k≤3,则对x数组元素错误的引用是()。

A、x[5-3]B、x[k]C、x[k+5]D、x[0]5. Java Applet在被浏览器加载的时候首先被执行且在applet整个生命周期中只被运行一次的方法是()。

A、init()B、start()C、opreationcrawl()D、reader()6. 在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行?()A、init()B、start()C、destroy()D、stop()7. 在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。

这种面向对象程序特性称为()。

A、隐藏B、重写C、重载D、Java不支持此特性8. 以下有关构造方法的说法,正确的是()。

A、一个类的构造方法可以有多个B、构造方法在类定义时被调用C、构造方法只能由对象中的其它方法调用D、构造方法可以和类同名,也可以和类名不同9. 以下for循环的执行次数是()。

for(int x=0;(x==0)&(x>4);x++);A、无限次B、一次也不执行C、执行4次D、执行3次10. 下面类定义中哪一个给出了合法的抽象类的定义?()A、abstract Animal {abstract void growl();};B、class abstract Animal {abstract void growl();};C、abstract class Animal {abstract void growl();};D、abstract class Animal {abstract void growl() {System.out.println("growl");}}二、多项选择题1.Java中main()函数的值是什么?()A、StringB、intC、charD、void2.下面哪句话是正确的?()A、>> 是算术右移操作符B、>> 是逻辑右移操作符C、>>> 是算术右移操作符D、>>> 是逻辑右移操作符3. 下面哪个赋值语句是合法的?()A、float a = 2.0B、double b = 2.0C、int c = 2D、long d = 24. 已知表达式int m[] = {0, 1, 2, 3, 4, 5, 6 };下面哪个表达式的值与数组下标量总数相等?()A、m.length()B、m.lengthC、m.length()+1D、m.length+15. 下列关于静态初始化器的叙述中,哪一个是正确的?()。

Java语言与面向对象程序设计基础A卷

Java语言与面向对象程序设计基础A卷

Java 语言与面向对象程序设计基础试题 第1页(共10页) Java 语言与面向对象程序设计基础试题 第2页(共10页)一、判断题(判断下列说法是否正确,正确打“√”,错误打“×”,每小题2分,共20分) 1. Java 有两类程序:Java Application 和Java Applet ,其中Java Applet 程序由嵌入到浏览器中的解释器解释运行。

( ) 2.Java 程序里,创建新的对象用new 调用构造方法,回收无用的对象使用关键字free 。

( ) 3.Java 的类不允许多重继承,但接口支持多重继承。

( ) 4.Applet 是一种特殊的Panel ,它是Java Applet 程序的最外层容器。

( ) 5.Java 语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。

( ) 6.构造方法是一种特殊的方法,名字与类名一致,但返回类型都为void 型。

( ) 7.无论Java 源程序包含几个类的定义,若该源程序文件以A.java 命名,编译后生成的都只有一个名为A 的字节码文件。

( ) 8.在不同的软硬件平台上,Java 的各种数据类型所占用的内存长度不同,因此程序的可移植性不强。

( ) 9.Java 系统的标准输入对象是System.in ,标准输出对象有两个,分别是标准输出System.out 和标准错误输出System.err 。

( ) ( ) 二、单项选择题(每小题2分,共40分) 1.在编写Java Applet 程序时,需要在程序的开头写上( )语句。

A .import java.awt.* ; B .import java.applet.* ; C .import java.io.* ; D .import java.awt.event.* ; 2.以下声明正确的是( )。

A .public static int x; B .default int x; C .abstract double d; D .abstract final int x; 3.Java application 中的主类需包含main 方法,main 方法的返回类型是( )。

Java面向对象考试试卷(A卷)

Java面向对象考试试卷(A卷)

《Java面向对象程序设计》期末考试(A卷)❖注意:最多只能选做试卷中的5道题目,多做不得分。

选做题【本题满分5分】1. 以下程序能否通过编译?如果不能通过编译,请指出产生错误的原因已经改正的办法。

class Location{private int x;private int y;public void Location(int a,int b){x=a;y=b;}public int getX(){return x;}public int getY(){return y;}public static void main(String args[]){Location loc=new Location(12,20);System.out.println(loc.getX());System.out.println(loc.getY());}}【本题满分5分】2.下程序能否通过编译?如果不能,请指出产生错误的原因,并改正之。

class StudentsScore{private static int passPoint=350;private String studentsId;private String name;private int score;public StudentsScore(String studentId , String name , int score){this.studentsId=studentId;=name;this.score=score;}public int getScore( ){return score;}public String getName( ){return name;}}class StudentTest{public static void main(String args[]){StudentsScore student1 = new StudentsScore("20010101","zhang",560);if(student1.score-StudentsScore.passPoint>=0)System.out.println("Congratulation!" + + "passes the test");elseSystem.out.println("Sorry!" + + "does not pass the test");}}【本题满分10分】3.编写一个使用this和super的程序。

java面向对象考题和答案

java面向对象考题和答案

1.下面代码的输出结果是A.300 300B.100 100C.300 100D.100 3002.程序执行的结果是:::x =" + x++; }}A.doStuff:x =7B. main: x = 7B.doStuff:x =7main: x = 6C.doStuff:x =6main: x = 7D.doStuff:x =6main: x = 63.下列关于JVM的内存结构描述正确的是:A.类的各种信息在方法区中保存B.堆用于存放程序运行过程当中所有的局部变量C.栈用于存储使用new关键字创建的对象D.数组属于JVM的内存结构4.下列代码的输出结果是:A.cB.iC.dD.s5.程序执行的结果是:A.nullB.TomC.JackD." "6.关于构造方法,下列说法错误的是:A.构造方法不可以进行方法重写B.构造方法用来实例化一个新的对象C.构造方法具有和类名相同的名称D.构造方法不返回任何数据类型7.关于 Java 中继承的特点,下列说法正确的是:A.使类的定义复杂化B.Java 只支持单继承,不可多继承,但可以通过实现接口来达到多继承的目的C.子类继承父类的所有成员变量和方法,包括父类的构造方法D.不可以多层继承,即一个类不可以继承另一个类的子类8.下列代码运行的结果是:A.Value: 3B.Value: 8C.Value: 13D.Value: 189.下列代码编译和运行的结果是:A.输出:0000B.输出:4321C.代码public EmployeeString id {行,出现编译错误D.抛出运行时异常10.下列代码的运行结果是:A.peepB.barkC.meowD.抛出运行时异常11.下列代码编译和运行的结果是:A.输出:TestAB.输出:TestBC.输出:TestA TestBD.编译错误12.请看下列代码:class One {void foo {}}class Two extends One {// insert method here}下列选项中的代码,放置在<插入代码>处无编译错误的是: A.int foo { / more code here / }B. protected void foo { / more code here / }C. public void foo { / more code here / }D. private void foo { / more code here / }13.下列选项中,不属于Java 的访问修饰符的是:A.privateB.protectedC.friendlyD.public14.下列代码的输出结果是:A.300-100-100-100-100B.300-300-100-100-100C.300-300-300-100-100D.300-300-300-300-10015.下列代码运行的结果是:public class Base { public static final String FOO = "foo";A.foofoofoofoofooB.foobarfoobarbarC.foobarfoofoofooD.foobarfoobarfoo16.关于下列代码说法正确的是:A.编译错误B.运行时抛出异常C.运行后,fa对象属性id的值没有改变,应然是42D.运行后,fa对象属性id的值改变成新的值6917.请看下列代码编译和运行的结果是:A.sun 2B.null 2C.null 1D.运行时抛出NullPointerException异常18.下列代码的输出结果是:A.0, 0,0B.150, 60, 0C.150, 150, 150D.抛出运行时异常19.请看下列代码:public abstract class Employee {protected abstract double getSalesAmount;public double getCommision {return getSalesAmount 0.15;estA {}}class Sales extends Employee {<插入代码>}在<插入代码>处填入的方法正确的是:A.double getSalesAmount { return 1230.45; }B.public double getSalesAmount { return 1230.45; }C.private double getSalesAmount { return 1230.45; }D.protected double getSalesAmount { return 1230.45; }20.关于下列代码说法正确的是:public interface A { public void doSomethingStringthing;}public class AImpl implements A { public void doSomethingString msg { }}public class B { public A doit { return null; } public String execute { return null; }}public class C extends B { public AImpl doit { return null; } public Object execute { return null; }} A. 所有类和接口都编译成功 B.类B编译失败C.类Aimpl编译失败D.类C编译失败21.关于下列代码说法正确的是:interface A { public void aMethod;}interface B { public void bMethod;}interface C extends A, B { public void cMethod;}class D implements B { public void bMethod {}}class E extends D implements C { public void aMethod {} public void bMethod {} public void cMethod {}}A.编译失败B.如果定义D e = new E;, 那么 e.bMethod;调用D类的bMethod方法C.如果定义D e = Dnew E;, 那么 e.bMethod;调用D类的bMethod方法D.如果定义D e = Dnew E;, 那么 e.bMethod;调用E类的bMethod方法22.请看下列代码:处理请求";}};}}如果上述代码采用回调模式编写,下列关于ServletAction的定义正确的是:A. public static class ServletAction { public void doService;}B.public final class ServletAction { public void doService;}C.public class ServletAction { public void doService;}D. public interface ServletAction { public void doService;}23.下列代码运行的结果是:A.HelloB. Hello WorldC. Hello World 5D.运行后无输出24.请看下列代码编译和运行的结果是:A.输出:testB.输出:nullC.代码行,编译出错D.代码public String toString {行,编译出错25.请看下列代码:关于上述代码说法正确的是:A.在第5行出现编译错误,fn方法的参数必须用final修饰B.在第3行出现编译错误,在方法的内部不能写类C.在第8行出现编译错误,在方法的内部不能实例化Inner类的对象D.运行代码,控制台输出100A1,正确答案:C2,正确答案:D3,正确答案:A4,正确答案:A5,正确答案:B6,正确答案:B7,正确答案:B8,正确答案:A9,正确答案:C10,正确答案:D11,正确答案:B 12,正确答案:BC 13,正确答案:C 14,正确答案:B 15,正确答案:D 16,正确答案:A 17,正确答案:D 18,正确答案:C 19,正确答案:BD 20,正确答案:D 21,正确答案:D 22,正确答案:D 23,正确答案:A 24,正确答案:A 25,正确答案:A。

java面向对象考题和答案

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.300300B.100100C.300100D.1003002.程序执行的结果是: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 =7main: x = 7B.doStuff:x =7main: x = 6C.doStuff:x =6main: x = 7D.doStuff:x =6main: x = 63.下列关于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.cB.iC.dD.s5.程序执行的结果是: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();}}A.nullB.TomC.JackD." "6.关于构造方法,下列说法错误的是:A.构造方法不可以进行方法重写B.构造方法用来实例化一个新的对象C.构造方法具有和类名相同的名称D.构造方法不返回任何数据类型7.关于 Java 中继承的特点,下列说法正确的是:A.使类的定义复杂化B.Java 只支持单继承,不可多继承,但可以通过实现接口来达到多继承的目的C.子类继承父类的所有成员变量和方法,包括父类的构造方法D.不可以多层继承,即一个类不可以继承另一个类的子类8.下列代码运行的结果是:class Foo {public int a;public Foo() {a = 3;}public void addFive() {a += 5;}}class Bar extends Foo {public int a;public Bar() {a = 8;}public void addFive() {this.a += 5;}}public class TestFoo {public static void main(String[] args) {Foo foo = new Bar();foo.addFive();System.out.println("Value: " + foo.a);}}A.Value: 3B.Value: 8C.Value: 13D.Value: 189.下列代码编译和运行的结果是:class Person {String name = "No name";public Person(String nm) {name = nm;}}class Employee extends Person {String empID = "0000";public Employee(String id) {empID = id;}}public class EmployeeTest {public static void main(String[] args) {Employee e = new Employee("4321");System.out.println(e.empID);}}A.输出:0000B.输出:4321C.代码public Employee(String id) {行,出现编译错误D.抛出运行时异常10.下列代码的运行结果是:public class Animal {public String noise() {return "peep";}public static void main(String[] args) {Animal animal = new Dog();Cat cat = (Cat)animal;System.out.println(cat.noise());}}class Dog extends Animal {public String noise() {return "bark";}}class Cat extends Animal {public String noise() {return "meow";}}A.peepB.barkC.meowD.抛出运行时异常11.下列代码编译和运行的结果是:public class A {public void start() {System.out.println("TestA");}}public class B extends A {public void start() {System.out.println("TestB");}public static void main(String[] args) {( (A) new B( ) ).start();}}A.输出:TestAB.输出:TestBC.输出:TestA TestBD.编译错误12.请看下列代码:class One {void foo() {}}class Two extends One {// insert method here}下列选项中的代码,放置在<插入代码>处无编译错误的是: A.int foo() { /* more code here */ }B. protected void foo() { /* more code here */ }C. public void foo() { /* more code here */ }D. private void foo() { /* more code here */ }13.下列选项中,不属于Java 的访问修饰符的是:A.privateB.protectedC.friendlyD.public14.下列代码的输出结果是:class Foo {private int x;public Foo(int x) {this.x = x;}public void setX(int x) {this.x = x;}public int getX() {return x;}}public class Gamma {static Foo fooBar(Foo foo) {foo = new Foo(100);return foo;}public static void main(String[] args) {Foo foo = new Foo(300);System.out.print(foo.getX() + "-");Foo fooFoo = fooBar(foo);System.out.print(foo.getX() + "-");System.out.print(fooFoo.getX() + "-");foo = fooBar(fooFoo);System.out.print(foo.getX() + "-");System.out.print(fooFoo.getX());}}A.300-100-100-100-100B.300-300-100-100-100C.300-300-300-100-100D.300-300-300-300-10015.下列代码运行的结果是:public class Base {public static final String FOO = "foo";16.class Sub extends Base {public static final String FOO = "bar";}public static void main(String[] args) {Base b = new Base();Sub s = new Sub();System.out.print(Base.FOO);System.out.print(Sub.FOO);System.out.print(b.FOO);System.out.print(s.FOO);System.out.print(((Base) s).FOO);}}A.foofoofoofoofooB.foobarfoobarbarC.foobarfoofoofooD.foobarfoobarfoo16.关于下列代码说法正确的是:public class ItemTest {private final int id;public ItemTest(int id) {this.id = id;}public void updateId(int newId) {id = newId;}public static void main(String[] args) {ItemTest fa = new ItemTest(42);fa.updateId(69);System.out.println(fa.id);}}A.编译错误B.运行时抛出异常C.运行后,fa对象属性id的值没有改变,应然是42D.运行后,fa对象属性id的值改变成新的值6917.请看下列代码编译和运行的结果是:public class Student {private String name="sun";public static void main(String[] args) {Student[] students=new Student[2];System.out.println(students[0].name);System.out.println(students.length);}}A.sun 2B.null 2C.null 1D.运行时抛出NullPointerException异常18.下列代码的输出结果是:abstract class Vehicle {public int speed() {return 0;}}class Car extends Vehicle {public int speed() {return 60;}}class RaceCar extends Car {public int speed() {return 150;}}public class TestCar {public static void main(String[] args) {RaceCar racer = new RaceCar();Car car = new RaceCar();Vehicle vehicle = new RaceCar();System.out.println(racer.speed() + ", " + car.speed() + ", " + vehicle.speed());}}A.0, 0,0B.150, 60, 0C.150, 150, 150D.抛出运行时异常19.请看下列代码:public abstract class Employee {protected abstract double getSalesAmount();public double getCommision() {return getSalesAmount() * 0.15;estA() {}}class Sales extends Employee {<插入代码>}在<插入代码>处填入的方法正确的是:A.double getSalesAmount() { return 1230.45; }B.public double getSalesAmount() { return 1230.45; }C.private double getSalesAmount() { return 1230.45; }D.protected double getSalesAmount() { return 1230.45; }20.关于下列代码说法正确的是:public interface A {public void doSomething(String thing);}public class AImpl implements A {public void doSomething(String msg) {}}public class B {public A doit() {return null;}public String execute() {return null;}}public class C extends B {public AImpl doit() {return null;}public Object execute() {return null;}}A. 所有类和接口都编译成功B.类B编译失败C.类Aimpl编译失败D.类C编译失败21.关于下列代码说法正确的是:interface A {public void aMethod();}interface B {public void bMethod();}interface C extends A, B {public void cMethod();}class D implements B {public void bMethod() {}}class E extends D implements C {public void aMethod() {}public void bMethod() {}public void cMethod() {}}A.编译失败B.如果定义D e = new E();, 那么 e.bMethod();调用D类的bMethod()方法C.如果定义D e = (D)(new E());, 那么 e.bMethod();调用D类的bMethod()方法D.如果定义D e = (D)(new E());, 那么 e.bMethod();调用E类的bMethod()方法22.请看下列代码:public class UserRequest {public void request(ServletAction action) {action.doService();}public static void main(String[] args) {UserRequest user = new UserRequest();user.request(new ServletAction() {public void doService() {System.out.println("处理请求");}});}}如果上述代码采用回调模式编写,下列关于ServletAction的定义正确的是:A. public static class ServletAction {public void doService();}B.public final class ServletAction {public void doService();}C.public class ServletAction {public void doService();}D. public interface ServletAction {public void doService();}23.下列代码运行的结果是:public class Hello {String title;int value;public Hello() {title += "World";}public Hello(int value) {this.value = value;title = "Hello";}public static void main(String[] args) { Hello c = new Hello(5);System.out.println(c.title);}}A.HelloB. Hello WorldC. Hello World 5D.运行后无输出24.请看下列代码编译和运行的结果是:interface TestA {String toString();}public class Test {public static void main(String[] args) {System.out.println(new TestA() {public String toString() {return "test";}});}}A.输出:testB.输出:nullC.代码System.out.println(new TestA() {行,编译出错D.代码public String toString() {行,编译出错25.请看下列代码:1)public class Outer {2) void fn(int i) {3) class Inner {4) void print() {5) System.out.println(i);6) }7) }8) Inner in = new Inner();9) in.print();10) }11)}12)class Test {13) public static void main(String args[]){14) Outer out=new Outer();15) out.fn(100);16) }17)}关于上述代码说法正确的是:A.在第5行出现编译错误,fn方法的参数必须用final修饰B.在第3行出现编译错误,在方法的内部不能写类C.在第8行出现编译错误,在方法的内部不能实例化Inner类的对象D.运行代码,控制台输出1002,正确答案:D 3,正确答案:A 4,正确答案:A 5,正确答案:B6,正确答案:B 7,正确答案:B 8,正确答案:A 9,正确答案:C 10,正确答案:D11,正确答案:B 12,正确答案:BC 13,正确答案:C 14,正确答案:B 15,正确答案:D16,正确答案:A 17,正确答案:D 18,正确答案:C 19,正确答案:BD 20,正确答案:D22,正确答案:D 23,正确答案:A 24,正确答案:A 25,正确答案:A。

java面向对象试题及答案

java面向对象试题及答案

JAVA面向对象一:填空1、_____ 是JVM自带的一个线程(自动运行着的程序),用于回收没有任何引用所指向的对象。

2、_____空间用于存储使用new关键字所创建的对象;_____空间用于存储程序运行时在方法中声明的所有的局部变量;_____用于存放类的信息(包括方法),方法有_____份。

3、面向对象三大特征:_____,_____,_____.4、下面是一个类的定义,请将其补充完整。

class _____ {String name;int age;Student( _____ s, int i) {name=s;age=i;}}5、Java 语言的接口是特殊的类,其中包含______常量和_______方法。

6.如果子类中的某个方法的名字、__________和参数列表与它的父类中的某个方法完全一样,则称子类中的这个方法覆盖了父类的同名方法。

7. Java 仅支持类间的单重继承,接口可以弥补这个缺陷,支持_____重继承.8. 接口中所有方法均为________和________的。

9. Java语言中,表示一个类不能再被继承的关键字是________。

10.Java语言中,表示一个类A继承自父类B,并实现接口C的语句是_________________。

11、以下代码的输出结果是________________。

int i=9;char c=’a’;char d=(char)(c+i);System.out.println(d);12.继承主要强调子类在父类的基础上取”长”补”短”,而______主要强调的是类与类之间的传输13、我们在java程序中,把关键字________加到方法名称的前面,来实现子类调用父类的方法14.java语言中,调用方法时,参数传递是_____调用,而不是地址调用15.接口是一种只含有抽象方法或______的一种特殊抽象类16.abstract方法_______(不能或能)与final并列修饰同一个类17.创建一个类就是创建一个新的数据类型,而类在java中属于_____数据类型。

java面向对象试题及答案

java面向对象试题及答案

java面向对象试题及答案一、单选题(每题2分,共10分)1. 在Java中,下列哪个关键字用于定义一个类?A. classB. interfaceC. structD. enum答案:A2. Java中,哪个关键字用于定义一个私有方法?A. privateB. publicC. protectedD. default答案:A3. 下列哪个选项不是Java中的访问修饰符?A. privateB. publicC. protectedD. static答案:D4. 在Java中,哪个关键字用于实现多态?A. abstractB. finalC. staticD. interface答案:A5. 在Java中,下列哪个关键字用于定义一个接口?A. classB. interfaceC. structD. enum答案:B二、多选题(每题3分,共15分)1. 在Java中,下列哪些关键字用于定义一个类的方法?A. publicB. privateC. protectedD. static答案:A, B, C, D2. 下列哪些关键字用于实现类的继承?A. extendsB. implementsC. abstractD. final答案:A3. 在Java中,下列哪些关键字用于定义类的成员变量?A. privateB. publicC. protectedD. static答案:A, B, C, D4. 下列哪些关键字用于定义类的构造方法?A. constructorB. thisC. newD. super答案:B, D5. 在Java中,下列哪些关键字用于定义接口的常量?A. privateB. publicC. staticD. final答案:B, C, D三、判断题(每题2分,共10分)1. Java中,一个类可以继承多个类。

(错误)2. Java中,接口可以继承接口。

(正确)3. Java中,一个类可以继承多个接口。

面向对象分析与设计试题A卷及答案

面向对象分析与设计试题A卷及答案

面向对象分析与设计试题A卷及答案面向对象分析与设计试题A卷及答案1. 到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是( D )的出现和广泛使用,使面向对象方法成为了软件开发的主流方法。

A. OMTB. OOSEC. C++D. UML2 . (D )为编程人员提供了重复利用程序资源的一种途径,使编程人员可以扩充和完善旧的程序以适用新的需求。

A.封装机制B. 抽象机制C. 多态机制D. 继承机制3. 面向对象程序设计中用(C )来描述具有相同属性和行为的对象集合。

A.实体B. 对象C. 类D. 类模板4. 下列语言中,(D )是一种混合型面向对象编程语言。

A. C语言B. Java 语言C. Basic 语言D. C++ 语言5.下列不属于类的成员函数的是(D )。

A.构造函数B.析构函数C.缺省构造函数D. 友元函数6.多态机制的作用是(B )。

A.信息隐藏B.实现“一种接口,多种方法”C. 派生新类D.数据抽象7.合理地利用(B ),既可以实现部分成员隐蔽,又能方便部分成员的继承,实现代码的高效重用和扩充。

A.公有继承B. 保护继承C. 友员函数D. 私有继承8. (C )经过实例化而生成具体的类。

A.抽象类B.函数模板C. 类模板D.对象9.类的析构造函数是在(C )时调用的。

A.不自动调用B.创建对象C.删除对象D.创建派生类对象10 ?在公有继承的情况下,基类的(C )成员无法继承到派生类中。

A.公有成员B.保护成员C. 私有成员D.静态成员11.在类族中通过定义A.类的嵌套B.(D )来实现运行时多态。

类的继承 C. 抽象类 D.虚函数12. UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化。

其中(C)不属于这类视图。

(D )是从用户使用系统的角度描述系统功能的图形表达方法。

在一个“库存管理系统”中,入库管理和岀库管理都需要检查用户帐号是否正确。

那么,用例“入库管理”、“岀库管理”与用例“检查用户帐号”之间是( 关系。

java面向对象试题及答案

java面向对象试题及答案

java面向对象试题及答案# Java面向对象试题及答案一、选择题1. 在Java中,以下哪个关键字用于定义类?- A. class- B. interface- C. enum- D. package答案:A2. 以下哪个是Java中的继承特性?- A. 一个类可以继承多个类- B. 类可以继承接口- C. 接口可以继承类- D. 接口可以继承多个接口答案:D3. 以下哪个是Java中封装的体现?- A. 使用public关键字- B. 使用private关键字- C. 使用static关键字- D. 使用final关键字答案:B4. 在Java中,哪个关键字用于实现多态?- A. abstract- B. final- C. override- D. implements答案:C5. 以下哪个是Java的构造方法的特点?- A. 可以有返回类型- B. 可以有多个同名的构造方法- C. 必须有返回类型- D. 必须与类名相同答案:D二、简答题1. 简述面向对象编程的三大特性,并给出Java中的例子。

面向对象编程的三大特性是封装、继承和多态。

- 封装:封装是将对象的实现细节隐藏起来,只暴露出一个可以被外界访问的接口。

例如,在Java中,可以通过使用private关键字来隐藏类的成员变量,只通过public方法来访问这些变量。

- 继承:继承允许新创建的类(子类)继承现有类(父类)的属性和方法。

例如,如果有一个`Animal`类,可以创建一个`Dog`类继承`Animal`类。

- 多态:多态允许同一个接口接受不同的数据类型。

在Java中,可以通过重写父类的方法来实现多态。

例如,`Animal`类有一个`makeSound()`方法,而`Dog`类可以重写这个方法来发出狗的叫声。

2. 解释Java中的接口和抽象类的区别。

接口和抽象类都是Java中实现抽象化的方式,但它们有以下区别: - 接口可以包含抽象方法和默认方法,但不能有具体实现。

JJava面向对象期末试卷AB卷答案

JJava面向对象期末试卷AB卷答案

A卷:1-5:DBBBD6-10:ADCCD11-15:CADAD16-20:CAACB填空题:1.javac java2.boolean3.final static4.String5.private6.new7.属性方法分析题:1. 9872.s=1803.helloI love JavahelloI love JavahelloI love Java4.good and gbc1.使用冒泡排序将这组数据{95,63,79,84,36,82,45}进行降序排列。

public static void main(String[] args){int[] arr = {95, 63, 79, 84, 36, 82, 45};for(int i = 0; i < arr.length - 1; i++){for(int j = 0; j < arr.length - i - 1; j++){if(arr[j] < arr[j + 1]){int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}2.(1)定义一个矩形类Rectangle:1)定义三个方法:getArea()求面积、getPer()求周长,showAll()分别在控制台输出长、宽、面积、周长。

2)有2个属性:长length、宽width。

3)通过构造方法Rectangle(int width, int length),分别给两个属性赋值。

public class Rectangle{public int width;public int length;public Rectangle(int width, int length){this.width = width;this.length = length;}public int getArea(){return width * length;}public int getPer(){return 2 * (width + length);}public void showAll(){System.out.println("长:"+width+"宽:"+length"+"\n面积:"+getArea()+"\n周长:”+getPer()); }}B卷答案:1-5:BDDAB6-10:BACDD11-15:DDCDA16-20:CBCDB填空题:1.4 82.类3.String StringBuffer4.类5.面向对象6.new7.friendly protected分析题:1.length=4b[0]=20112.good and gbc3.i=2i=5i=8i=11总数为:524.ACEG编程题:1.已知数组{95,63,79,84,36,82,45},先将数组进行升序排列,再将70插入数组中,并依然按升序输出数组。

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

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

面向对象部分测试题考试宣言:同学们,考试考多少分不是我们的目的!排在班级多少的名次也不是我们的初衷!我们考试的目的是要通过考试中的题目,检査大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了,那么不用怕,考完试后,导师讲解的时候你要注意听!那时候学会了,记住了,也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。

单选2 分/题,多选4分/题。

多选题不全对半分,全对满分。

1.卜-面描述函数觅写错误的是A.要有子类继承或实现B.子类方法的权限必须大于等于父类的权限C.父类中被private权限修饰的方法可以被子类觅写D.子类重写接I 1中的抽象方法,子类的方法权限必须是public的//接I I所有方法前而都足默认public abstract2.卞面关于类的设计思路描述错误的是()A.根据需求定义类所包含的字段(成员变屋)B.根据面向对彖的思想要求,隐藏属性和实现细节之后,町以提供公共的访问方式C.対装之后的字段在本类内也必须使用get/set方法//private修饰之后町以在本类中直接使用,不需要通过get/set方法凋用D.按需求町以在类中定义若干构造方法3.分析如下Java代码,如果想在控制台上输出"B类的test()方法",则在主函数应填入()。

class A {public void test() {System .out .printin (fr A 类的test ()方法”);}}class B extends A {public void test() {System .out .printin ("B 类的test ()方法");}public static void main (String args [ ]) {}}A. A a = new B ();a .test ();B. A a = nev? A();a .test ();C. B b = new A();b. test ();D.new B () .test ();4.关于封装下面介绍错误的是()oA.封装隐藏实现细节B.封装提高重用性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

面向对象部分测试题考试宣言:同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷!我们考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。

单选2分/题,多选4分/题。

多选题不全对半分,全对满分。

1.下面描述函数重写错误的是A. 要有子类继承或实现B. 子类方法的权限必须大于等于父类的权限C. 父类中被private权限修饰的方法可以被子类重写D. 子类重写接口中的抽象方法,子类的方法权限必须是public的//接口所有方法前面都是默认public abstract2.下面关于类的设计思路描述错误的是 ( )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修饰才叫做封装//仅仅是封装的一种5.试图编译运行下面的代码会发生什么情况public class MyClass{static int i; // int型的成员变量默认值为 0public static void main(String[] args){System.out.println(i);}}A. 错误,变量i没有被初始化B. 输出nullC. 输出1D. 输出06.下面对static的描述正确的是A. 静态修饰的成员变量和成员方法随着类的加载而加载B. 静态修饰的成员方法可以访问非静态成员变量 //对象都没有,访问什么呀?C. 静态修饰的成员可以被整个类对象所共享D. 静态修饰的成员变量和成员方法随着类的消失而消失7.给定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( ){ } }8.在Java中,下面对于构造函数的描述正确的是()。

A. 类必须显式定义构造函数B. 构造函数的返回类型是void // 构造器(函数)没有返回值类型,什么都不用写.C. 构造函数和类有相同的名称,并且不能带任何参数D. 一个类可以定义多个构造函数9.下面Java代码的运行结果是()。

class Penguin {//下面蓝色的部分被称为属性 , 字段 , 成员变量private String name=null; // 名字private int health=0; // 健康值private String sex=null; // 性别public void Penguin() { // 构造方法没有void,所以这是个普通的方法health = 10;sex = "雄";System.out.println("执行构造方法。

");}public void print() {System.out.println("企鹅的名字是" + name +",健康值是" + health + ",性别是" + sex+ "。

");}public static void main(String[] args) {Penguin pgn = new Penguin();pgn.print();}}A. 企鹅的名字是null,健康值是10,性别是雄。

B. 执行构造方法。

企鹅的名字是null,健康值是0,性别是null。

C. 企鹅的名字是null,健康值是0,性别是null。

D. 执行构造方法。

企鹅的名字是null,健康值是10,性别是雄。

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

A. 抽象类本身可以被实例化B. 如果一个类中有一个方法被声明为抽象的,那么这个类必须是抽象类C. 抽象类中的方法必须都是抽象的D. 声明抽象类必须带有关键字abstract11.给定如下Java程序代码,在_____横线处加入()语句,可以使这段代码编译通过。

interface Parent{public int count(int i);}public class Test implements Parent {public int count(int i){return i % 9;}}public static void main(String[] args){________________int i = p.count(20);}}A. Test p = new Test();B. Parent p;C. Parent p = new Parent();D. Test p = new Parent();12.下面说法正确的是( )。

A. 匿名内部类编译后不会生成.class文件//也会生成 , 大家可以自己试下.B. 接口编译后不会生成.class文件//也会有的 , 大家可以自己试下.C. 抽象类中没有构造方法//有构造方法, 给子类使用.D. 局部内部类只能访问被final修饰的局部变量。

13.类Student中构造方法声明正确的是哪一项? ()A:class Student{public Student()}B:class Student{public Student(){}}C:class Student{public void Student(){}}D:class Student{new Student(){}}14.下面对this的作用描述错误的是A. 当成员变量和局部变量重名的时候可以用this区分B. this()语句必须放在构造函数的第一行,根据this后面括号中的参数调用本类其他的构造函数.C. this可以用本类的一般函数D. this可以调用父类的一般函数//需要首先调用父类的属性或方法,要用super关键字15.在Java中,以下程序编译运行后的输出结果为()。

public class Test {int x, y;Test(int x, int y) {this.x = x;this.y = y;}public static void main(String[] args) {Test pt1, pt2;pt1 = new Test(3, 3);pt2 = new Test(4, 4);System.out.print(pt1.x + pt2.x);}}A. 6B. 3 4C. 8D. 716.在java中,已定义了两个接口B和C,以下语句正确的是()A. interface A extends B,CB. interface A implements B,CC. class A implements B,CD. class A implements B,implements C17.给定一个Java程序Test.java的代码如下所示,编译时,会出现以下()情况。

class Parent {public int count() { // 第1行return 0;}}public class Test extends Parent {public float count() { // 第2行//子类重写父类方法,要求返回值必须一致.按继承算也会报错,因为构不成重载return 9; // 第3行}}A. 编译通过B. 在第1行引发编译错误C. 在第2行引发编译错误D. 在第3行引发编译错误18.在Java接口中定义常量,下面语法正确的是()。

A. static final int MALE = 1;B. final int MALE = 1;C. int MALE = 1;D. private int MALE = 1;public static final int MALE = 1; 接口中只定义常量的方法.public abstract 返回值 method(); 接口中只定义抽象方法.19.给定Java程序Child.java的代码如下所示,则编译运行该类的结果是()。

class Parent {Parent() {System.out.println("parent");}}public class Child extends Parent {Child(String s) {System.out.println(s);}public static void main(String[] args) {Child child = new Child("child"); //先调用父类的无参构造函数,再调自己的有参构造.}}A. childB. childparentC. parentchildD. 编译错误20.下列选项中关于Java中super关键字的说法错误的是()。

相关文档
最新文档