java面向对象考试题.doc

上传人:yyf 文档编号:6296580 上传时间:2020-10-22 格式:DOC 页数:25 大小:73.50KB
返回 下载 相关 举报
java面向对象考试题.doc_第1页
第1页 / 共25页
java面向对象考试题.doc_第2页
第2页 / 共25页
java面向对象考试题.doc_第3页
第3页 / 共25页
java面向对象考试题.doc_第4页
第4页 / 共25页
java面向对象考试题.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《java面向对象考试题.doc》由会员分享,可在线阅读,更多相关《java面向对象考试题.doc(25页珍藏版)》请在三一文库上搜索。

1、.第一题: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, fileName.lastIndexOf(.exe)+ );fileName.endsWith(.exe)判断是否已.exe结尾substring(0,4)截取0-3的字符串,不包含4la

2、stIndexOf(.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是s

3、hort型的,但是编译器把它转换为int型答案:int Long第三题:public static void main(String args)String test = Test A. Test B. Test C.;String regex = .s*; String result = test.split(regex); for(String s : result) System.out.print(s + );精品. s 空白字符 *表示0个或任意多个 text.split(.)按.拆分答案: Test A Test B Test C 第四题:public class AA priva

4、te Long userId; private String nickName; public Long getUserId() return userId;public void setUserId(Long userId) this.userId = userId;public String getNickName() return nickName;public void setNickName(String nickName) this.nickName = nickName;public static void main(String args)AA m1=new AA(); m1.

5、setUserId(new Long(100001); 精品.m1.setNickName(mick); AA m2=new AA(); m2.setUserId(new Long(100001); m2.setNickName(mick); System.out.println(m1=m2); System.out.println(m1.equals(m2); equals方法返回值也是return m1=m2答案:false false第五题运行下列代码,输出为false的是:()。A.String st1 = abc;System.out.println(abc = st1);B.Str

6、ing st2 = abcSystem.out.println(st2.equals(newString(abc);C.Integer i = 100; System.out.println(100 = i);D.ArrayList list = new ArrayList();System.out.println(list.contains(null);答案:D第六题精品.public interface Cookie Cookie cookie=new Cart (小面包,盼盼); public class Cart implements Cookie private String nam

7、e; private String production;public Cart(String name,String production) this.name=name; this.production=production; public void smell()cookie =new Cart(蛋黄派,达利园); final 要求属性不可更改cookie =new Cart(蛋黄派,达利园); 这个修改了 cookie的地址,所以报错第七题(多选)请看下列代码: public abstract class Shape int x;int y; public abstract void

8、draw(); 精品.public void setAnchor(int x, int y) this.x = x; this.y = y;下列选项中能正确使用Shape类的是:A.public class Circle implements Shape private int radius; B.public abstract class Circle extends Shape private int radius; C.public class Circle extends Shape private int radius; public void draw(); D.public cl

9、ass Circle extends Shape private int radius;public void draw() 抽象类不可以实例化,如果一个类继承了抽象类,必须重新其抽象方法答案:BD第八题(多选)请看下列代码:package com.tarena;public class Geodetics public static final double DIAMETER = 12756.32;访问静态常量DIAMETER的方式正确的是:精品.A.import com.tarena.Geodetics;public class TerraCarta public double halfw

10、ay()return Geodetics.DIAMETER/2.0;B.import com.tarena.Geodetics;public class TerraCarta public double halfway()return DIAMETER/2.0;C.import com.tarena;public class TerraCarta public double halfway()return Geodetics.DIAMETER/2.0;D.import com.tarena.*;public class TerraCarta public double halfway()ret

11、urn Geodetics.DIAMETER/2.0;精品.答案:AD第九题(多选)在Java语言中,下列说法正确的是()。A.一个接口可以继承多个接口B.一个类可以继承多个类C.一个类可以实现多个接口D.一个类可以有多个子类答案:ACD第十题(多选)在处,填入下列代码编译正确的是:public void foo(int x) A.foreach(int z : x) System.out.println(z);B.for(int z : x) System.out.println(z);C.while( x.hasNext() System.out.println( x.next();D.f

12、or( int i=0; i 0) 插入代码 A.int length = str.length(); char first=str.charAt(0); String strNew = str.replaceAll(String.valueOf(first), ); if (lengthstrNew.length() max_length = length - strNew.length(); System.out.println(first+:+max_length); B.int length = str.length(); char first=str.charAt(0); Strin

13、g strNew = str.replaceAll(String.valueOf(first), ); if (lengthstrNew.length() max_length = length - strNew.length();str = strNew;精品.System.out.println(first+:+max_length); C.int length = str.length();String first = str.substring(0, 1);String strNew = str.replaceAll(first, );if (lengthstrNew.length()

14、 max_length = length - strNew.length();str = strNew;System.out.println(first+:+max_length);D.int length = str.length();String first = str.substring(0, 1);String strNew = str.replaceAll(first, );if (lengthstrNew.length() max_length = length - strNew.length(); System.out.println(first+:+max_length);答案

15、:BC第十四题(多选)下面的方法属于StringBuffer的是:()。A.size精品.B.insertC.deleteD.length答案:BCD第十五题(多选)请看下列代码: public class Old public static Object get(List list) return list.get(0); 以下选项调用get方法,能编译通过的是:A.Object o = Old.get(new LinkedList();B.Object o = Old.get(new LinkedList();C.String s = Old.get(new LinkedList();D.

16、String s = (String)Old.get(new LinkedList();答案:AD1.重写必须继承,重载不用。2.重写的方法名,参数数目相同,参数类型兼容,重载的方法名相同,参数列表不同。3.重写的方法修饰符大于等于父类的方法,重载和修饰符无关。4.重写不可以抛出父类没有抛出的一般异常,可以抛出运行时异常精品.public void main (int x)int d = a+b+c;对的第十六题(单选题)从下面四段(A,B,C,D)代码中选择出正确的代码段( )(A)abstract class Name private String name;public abstract

17、 boolean isStupidName(String name) (B)public class Something void doSomething () private String s = ;int l = s.length();精品.(C)public class Something public static void main(String args) Other o = new Other();new Something().addOne(o);public void addOne(final Other o) o.i+; class Other public int i;(

18、D)public class Something public int addOne(final int x) return +x;A. 抽象方法不能有方法体。B方法中定义的是局部变量,不能用类成员变量修饰符 private。Dfinal 修饰为常量,常量的值不能被改变。第十七题(单选题)下列关于 interface 的说法正确的是( )(A)interface 中可以有 private 方法精品.(B)interface 中可以有 final 方法(C)interface 中可以有 function 实现(D)interface 可以继承其他 interfaceA. 接口中不可以有 priv

19、ate 的方法。B接口中不可以有 final 的方法 接口中的方法默认是 public abstract 的。C接口中的方法不可以有实现第十八题(单选题)在创建对象时,必须( )(A)先声明对象,然后才能使用对象(B)先声明对象,为对象分配内存空间,然后才能使用对象(C)先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象(D)上述说法都对对象是先声明,声明后会在给对象在内存里开辟空间,之后初始化,再进行使用答案:C第十九题(单选题)关于以下说法正确的是( )1class StaticStuff23staticint x=10;4staticx+=5;5publicstatic vo

20、id main(String args)精品.67System.out.println(x= + x);89staticx/=3;10.(A)4 行与 9 行不能通过编译,因为缺少方法名和返回类型(B)9 行不能通过编译,因为只能有一个静态初始化器(C)编译通过,执行结果为:x=5(D)编译通过,执行结果为:x=3静态块是类加载的时候就会被执行到的,静态执行顺序是按照在类中出现 的先后顺序执行。答案:D第二十题(单选题)下列哪种说法是正确的( )(A)本类中实例方法可以调用其他类中所有实例方法(B)本类中实例方法可以调用其他类中类方法(C)本类中实例方法可以直接通过方法名调用其他类的实例方法(

21、D)本类中实例方法可以直接通过方法名调用本类中其他实例方法A. 本类实例方法不可以调用其他类的私有实例方法。B. 本类实例方法不可以调用其他类的私有类方法。C本类实例方法不可以直接通过方法名调用其他类的实例方法。答案:D精品.第二十一题(多选题)在JAVA接口中可以定义( )。(A)静态方法(B)常量(C)构造方法(D)抽象方法接口中只能定义常量和抽象方法。答案:CD第二十二题(多选题)下面选项中哪两个可以在 A 的子类中使用( )class A protected int method1 (int a, int b) return 0;(A)public int method1(int a,

22、 int b) return 0; (B)private int method1(int a, int b) return 0; (C)private int method1(int a, long b) return 0; (D)public short method1(int a, int b) return 0; 精品.B子类重写父类的方法,访问权限不能降低;C属于重载;D子类重写父类的方法如果返回值类型是基本类型的话,要求相同。答案:AC第二十三题(单选题)在下面程序的第 7 行补充上下列哪个方法,会导致在编译过程中发生 错误( ) 1) class Super2) public fl

23、oat getNum()3) return 3.0f;4) 5) 6) public class Sub extends Super7) / TODO .8) (A)public float getNum()retun 4.0f;(B)public void getNum()(C)public void getNum(double d)(D)public double getNum(float d)retun 4.0f;方法重写、重载的问题。 重写要求方法签名(方法名+形参列表)完全相同,返回值类型如果是基本类型或无返回值时必须一致。重载要求方法名相同且参数列表必须不同,与返回值类型无关。答案

24、:B精品.第二十四题(单选题)关于以下程序代码的说明正确的是()1 classHasStatic2 private static int x=100;3 public static void main(String args )4HasStatic hs1=newHasStatic();5 hs1.x+;6HasStatic hs2=new HasStatic();7 hs2.x+;8 hs1=new HasStatic();9 hs1.x+;10HasStatic.x-;11System.out.println(x=+x);1213(A)5 行不能通过编译,因为引用了私有静态变量(B)10

25、行不能通过编译,因为 x 是私有静态变量(C)程序通过编译,输出结果为:x=103(D)程序通过编译,输出结果为:x=102静态变量是所有对象所共享的,所以上述代码中的几个对象操作是同一静态变量x,静态变量可以通过类名调用。答案:D精品.第二十五题(单选题)栈是一种( )(A)存取受限的线性结构(B)存取不受限的线性结构(C)存取受限的非线性结构(D)存取不受限的非线性结构栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。答案:A第二十六题(单选题)请问,以下哪些修饰符不能用于顶层类?(A)public(B)private(C)abstract(D)final对于顶层类(

26、外部类)来说,只有两种修饰符:public和默认(default)。因为外部类的上一单元是包,所以外部类只有两个作用域:同包,任何位置。因此,只需要两种控制权限:包控制权限和公开访问权限,也就对应两种控制修饰符:public和默认(default)。 但是private可以修饰class的,只不过该类不能使顶层类,可以是内部类内部类的上一级是外部类,那么对应的有四种访问控制修饰符:本类(private),同包(default),父子类(protected),任何位置(public)。 当一个内部类使用了private修饰后,只能在该类的外部类内部使用精品.答案:BCD第二十七题(多选题)如下哪

27、些不是 java 的关键字( )(A)const(B)null(C)false(D)thisjava中,null、true、false都不属于java 的关键字,它们都属于字面量值,都有着特殊的用途,且不建议作为标识符使用。答案:BC第二十八题(多选题)下面关于变量及其范围的陈述哪些是不正确的( )(A)类中的普通属性是类的实例变量(B)实例变量用关键字static声明(C)局部变量在局部范围外也可以被使用(D)局部变量在使用前必须被初始化由static修饰的变量称为类变量或是静态变量,局部变量作用域只在局部范围内部。答案:BC第二十九题子类A继承了父类B,A a = new A();则父类B

28、静态代码块父类B非静态代码块父类B构造函数子类A静态代码块精品.子类A非静态代码块子类A的构造函数的执行顺序是:-第三十题写出下面代码的运行结果:public class Aint age = 9; public A(int ag)int age = 8;age = ag;System.out.print(age);public A()this.age = 6;public static void main(String args)A a1 = new A(0);A a2 = new A();System.out.println( + a1.age + a2.age);答案: 0 9 6精品.

29、super(参数):调用父类中的某一个构造函数(应该为构造函数中的第一条语句)。this(参数):调用本类中另一种形式的构造函数(应该为构造函数中的第一条语句)。classPerson publicstaticvoidprt(String s) System.out.println(s);Person() prt(父类无参数构造方法: +A Person.);/构造方法(1)Person(String name) 精品.prt(父类含一个参数的构造方法: +A persons name is + name);/构造方法(2)publicclassChineseextendsPerson Chi

30、nese() super();/ 调用父类构造方法(1)prt(子类调用父类”无参数构造方法“: +A chinese coder.);Chinese(String name) super(name);/ 调用父类具有相同形参的构造方法(2)prt(子类调用父类”含一个参数的构造方法“: +his name is + name);Chinese(String name,intage) this(name);/ 调用具有相同形参的构造方法(3)prt(子类:调用子类具有相同形参的构造方法:his age is + age);publicstaticvoidmain(String args) Chinese cn =newChinese();精品.cn =newChinese(codersai);cn =newChinese(codersai,18);如有侵权请联系告知删除,感谢你们的配合!精品

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1