您好,欢迎访问三七文档
1、关于私有访问控制符private修饰的成员变量,以下说法正确的是(C)A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被3种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D.只能被同一个包中的类访问2、下列关于类和对象的描述中,不正确的一项是(D)。A.现实世界中,可以把每件事物都看做是一个对象B.一组对象构成一个程序,对象之间通过发消息通知彼此该做什么C.有共同属性的对象可以抽象为一个类D.一个类只能实例化一个对象4、JAVA语言中每个字符占几个字节(B)A1B2C3D47、应用数组元素时,数组下标可以是(D)A、整型常量B、整型变量C、整型表达式D、以上均可9.在Java中,包有多种用途,但不包含(C)。(选择一项)A、将类组合成较小的单元,便于使用B、有助于避免命名冲突C、有助于提高运行效率D、允许在更广的范围内保护类、数据和方法1、欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?(B)A.ArrayListmyList=newObject();B.ListmyList=newArrayList();C.ArrayListmyList=newList();D.ListmyList=newList();2、list是一个ArrayList的对象,哪个选项的代码填写到//tododelete处,可以在Iterator遍历的过程中正确并安全的删除一个list中保存的对象?(D)Iteratorit=list.iterator();intindex=0;while(it.hasNext()){Objectobj=it.next();if(needDelete(obj)){//needDelete返回boolean,决定是否要删除//tododelete}index++;}A、list.remove(obj);B、list.remove(index);C、list.remove(it.next());D、it.remove();5、下列说法哪个正确?(C)A.不需要定义类,就能创建对象B.对象中必须有属性和方法C.属性可以是简单变量,也可以是一个对象D、属性必须是简单变量6、finally块的作用是(D)A.出现异常,并且已被catch块捕获并处理之后,才会执行的内容B.异常情况下会执行的内容C.正常情况下会执行的内容D.无论是否出现异常,都会执行的内容7、以下关于java异常说法不正确的是(D)。A)Throwable类是Java语言中Error类和Exception类的父类。B)当异常对象是Exception类(或其子类)的实例时,能通过Java虚拟机或者throw语句抛出该异常对象,并能通过try…catch…finally处理。C)如果只用一个try块捕捉多个异常对象,则catch子句中的参数类型应是所有异常对象的父类。D)以上说法都不对。9、以下关于面向对象概念的描述中,不正确的一项是(B)。A、对象是类的实例B、在多个程序中每个类只有一个对象C、程序对象是通过一种抽象数据类型来描述的,这种抽象数据类型称为类的对象D、在程序中,对象是一组变量和相关方法的集合10、(多选)类B是一个抽象类,类C是类B的非抽象子类,下列创建对象x1的语句中正确的是(BC)。A)Bx1=newB();B)Bx1=newC();C)Cx1=newC();D)Cx1=newB();11、在创建对象时必须(C)A)先声明对象,然后才能使用对象B)先声明对象,为对象分配内存空间,然后才能使用对象C)先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象D)上述说法都对12、(多选)下面声明数组的写法错误(CD)。Ainta[];B:int[]a;Cint[3][]a;D;int[][3]a;14、(多选)关于Java异常,下列说法错误的是(CD)A、异常是定义了程序中遇到的非致命的错误,而不是编译时的语法错误B、try……catch语句中对try内语句监测,如果发生异常,则把异常信息放入对象e中C、throws用来表示一个方法有可能抛出异常给上一层,则在调用该方法时必须捕捉异常,否无法编译通过D、主函数不可以使用throws抛出异常15、(多选)下面关于外部类和内部类成员的相互访问的规则中,正确的选项是(AD)。A)内部类可以直接访问外部类的变量和方法B)外部类可以直接访问内部类的变量和方法C)外部类不能访问内部类的变量和方法D)外部类可通过创建内部类的实例来访问内部类的变量和方法13、异常包含下列那些内容?(C)。A)程序中的语法错误B)程序的编译错误C)程序执行过程中遇到的事先没有预料到的情况,该情况会导致程序在运行中出错D)程序事先定义好的可能出现的意外情况1、(多选)在java中,关于数组描述正确的是(BD)。A)数组中的索引下标从1开始B)存储在数组当中的数据都属于同一数据类型C)通过数组名.length()能获得数组的长度D)数组的最大索引下标是数组的长度减12、下列关于变量作用域的说法中,正确的一项是:(B)A、方法参数的作用域是方法外部代码段;B、异常处理(catch)参数的作用域是异常处理内部代码段;C、局部变量的作用域是整个类;D、成员变量的作用域是类的某个方法;6、(多选)以下说法中正确的是(AB)A)this关键字是在对象内部指代对象自身的引用B)this只和特定的对象关联,而不是和类关联C)一个类只能有一个构造函数D)一个类可以有多个不同名的构造函数7、以下说法中错误的是(A)A、非静态方法不能直接调用本类的静态方法。B、静态方法可以用类名直接调用。C、super关键字是在子类对象内部指代其父类的引用。D、super关键字不仅可以指代子类的直接父类,还可以指代父类的父类。8、关于继承的说法正确的是:(A)A、子类将继承父类所有的属性和方法,构造方法除外。B、子类将继承父类的非私有属性和方法,构造方法除外。C、子类只继承父类public方法和属性D、子类只继承父类的方法,而不继承属性9、重写与重载的关系是(A)A、重写只有发生在父类/接口与子类之间,而重载可以发生在同一个类中B.重写方法可以不同名,而重载方法必须同名C.父类的方法可以被重写,但不能被重载D.重写与重载是同一回事10、下列关于JAVA中抽象方法说法正确的是(C)。A)抽象类中不可以有非抽象方法B)某个非抽象类的父类是抽象类,则这个类必须重载父类的所有抽象方法C)抽象类无法实例化D)抽象方法的方法体部分必须用一对大括号{}括住12、抽象方法:(C)A、可以有方法体B、可以出现在非抽象类中C、是没有方法体的方法D、抽象类中的方法都是抽象方法15、下面有关Java异常处理模型的说法错误的是(A)。A)一个try块只能有一条catch语句B)catch块可以定义捕获所有类型的异常C)catch块不能单独使用,必须始终与try块在一起D)finally块不能单独使用,必须始终与try块在一起16、下列关于finally的说法正确的是?(A)A.无论异常是否被捕获,都会去执行finally语句B.finally语句应该放在所有的catch块的最前面C.如果程序在前面的捕获到异常,就不再执行finally语句D.如果程序在catch块中匹配到了多个合适的例外,就不再执行finally语句若类中没有定义任何的构造方法,则运行时系统会自动为该类生成一个___默认构造___方法。1、构造方法是一种特殊的成员方法,构造方法名与___类名___相同。2、Java语言只允许单继承,指每个类只能有一个____直接父类_____。3、实现接口的关键字___implements___。6、抛出异常可以通过___throws___语句实现。1、interfaceA{finalintx=0;}classB{intx=1;}publicclassCextendsBimplementsA{publicvoidpX(){System.out.println(super.x);}publicstaticvoidmain(String[]args){newC().pX();}}输出结果为:1//super关键字是从直接父类开始检索,如果直接父类没有发现该属性,才继续向上搜索2、classBase{publicvoidmethod(){System.out.print(Basemethod);}}classChildextendsBase{publicvoidmethod(){System.out.print(Childmethod);}}classSample{publicstaticvoidmain(String[]args){Basebase=newChild();base.method();}}输出结果为:Childmethod3、classPerson{Stringname=person;publicvoidshout(){System.out.print(name);}}classStudentextendsPerson{Stringname=student;Stringschool=school;}publicclassTest{publicstaticvoidmain(String[]args){Personp=newStudent();p.shout();}}输出结果为:person1、publicclassA{publicstaticvoidmain(Stringargs[]){Listlist=newArrayList();list.add(“Hello”);list.add(“World”);list.add(“Hello”);list.add(“Learn”);list.remove(“Hello”);list.remove(0);for(inti=0;ilist.size();i++){System.out.println(list.get(i));}}}输出结果::HelloLearn2、classMyClass{intvalue;publicMyClass(){}publicMyClass(intvalue){this.value=value;}publicStringtoString(){return+value;}}publicclassTestList{publicstaticvoidmain(Stringargs[]){MyClassmc1=newMyClass(10);MyClassmc2=newMyClass(20);MyClassmc3=newMyClass(30);Listlist=newArrayList();list.add(mc1);list.add(mc2);list.add(mc3);MyClassmc4=(MyClass)list.get(1);mc4.value=50;for(inti=0;ilist.size();i++){System.out.println(list.get(i));}}}输出结果:1050301、歌手打分:在歌唱比赛中,共有10位评委进行打分,在计算歌手得分时,去掉一个最高分,去掉一个最低分,然后剩余的8位评委的分数进行平均,就是该选手的最终得分。输入每个评委的评分,求某选手的得分算法:冒泡排序1)将这一组数字循环2)将当前循环到的数字,和这个数字之后的每一个数字进行对比3)如果说,该数字比后面的某个数字大,则将两个数字进行换位1、已知有十六支男子足球队参加2008北京奥运会。写一个程序,把这16支球队随机分为4个组。(使用Math.random来产生随机数)2008北京奥运会男足参赛国家:科特迪瓦,阿根廷,澳大利亚,塞尔维亚,荷兰,尼日利亚、日本,美国,中国,新西兰,巴西,比利时,韩国,喀麦隆,洪都拉斯,意大利运行后打印出分配好的4组球队如:A组:澳大利亚比利时美国新西兰B组:喀麦隆洪都拉斯
本文标题:java考试
链接地址:https://www.777doc.com/doc-2881416 .html