JAVA认证历年真题:SCJP认证套题解析[2]_第1页
JAVA认证历年真题:SCJP认证套题解析[2]_第2页
JAVA认证历年真题:SCJP认证套题解析[2]_第3页
JAVA认证历年真题:SCJP认证套题解析[2]_第4页
JAVA认证历年真题:SCJP认证套题解析[2]_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、JAVA认证历年真题:SCJP认证套题解析2JAVA认证历年真题:SCJP认证套题解析2JAVA认证历年真题:SCJP认证套题解析221、which of the following assignment isnot correct?a. float f = 11.1;b. double d = 5.3e12;c. double d = 3.14159;d. double d = 3.14d.(a)题目:下面的哪些赋值语句是不对的。浮点数的赋值是带有小数点的数字缺省是 double型的,如果在 浮点数后面加f或者f则是float,后面加d或者d则是double ,科 学计数法形式的浮点数也是d

2、ouble型的,而double的精度比float 高,将一个高精度的double赋值给一个低精度的float时需要进行 强制类型转换,反之则不需要。22、given the uncompleted code of a class:class pers on stri ng n ame, departme nt;int age;public pers on( stri ng n) n ame = n; public pers on( stri ng n, int a) n ame = n; age = a; public pers on( stri ng n, str ing d, int a)

3、 / doing the same as twoargume ntsvers ionofcon structor/in cludi ng assig nment n ame=n ,age=adepartme nt = d;which expression can be added at the doing the same as. part of the con structor?a. pers on(n, a);b. this(pers on(n ,a);c. this( n,a);d. this (n ame,age).(c)题目:给出下面的不完整的类代码:下面的哪些表达式可以加到构造方法

4、中的doingthe sameas.处?在同一个类的不同构造方法中调用该类的其它构造方法需要使用this()的形式,而且必须是在构造方法的第一行调用,这个和普通 的方法重载调用的方式不同,普通的方法可以直接使用方法名加参数 来调用,而且调用位置没有限制,因此答案a是不行的,b的语法就是错误的,d的错误在于在父类型的构造函数被调用前不能引用类的 成员。构造方法是一个类对象实例化的起点(虽然严格来说首先执行的并不是构造方法的第一个语句,而是内存的分配),因此在构造方 法中不能将成员作为参数引用。23、which of the followingstateme nts about variables

5、 and their scopes are true?a. in sta nee variables are member variables of a class.b. in sta nee variables are declared with the static keyword.e. local variables defi nedin side a method are createdwhe n the method is executed.d. local variables must be in itialized before they are used.(acd)题目:下面关

6、于变量及其范围的陈述哪些是对的。a. 实例变量是类的成员变量。b. 实例变量用关键字static声明。c. 在方法中定义的局部变量在该方法被执行时创建d. 局部变量在使用前必须被初始化。类中有几种变量,分别是:局部变量(英文可以为: localautomatictemporarystack variable )是定义在方法里的变 量;实例变量(英文为:in sta nee variable )是在方法外而在类声明内定义的变量,有时也叫成员变量;类变量(英文为:class variable ) 是用关键字static声明的实例变量,他们的生存期分别是:局部变量 在定义该变量的方法被调用时被创建,

7、而在该方法退出后被撤销;实例变量在使用new xxxx()创建该类的实例时被创建,而其生存期和 该类的实例对象的生存期相同;类变量在该类被加载时被创建,不一 定要用new xxxx()创建,所有该类的实例对象共享该类变量,其生 存期是类的生存期。任何变量在使用前都必须初始化,但是需要指出 的是局部变量必须显式初始化,而实例变量不必,原始类型的实例变 量在该类的构造方法被调用时为它分配的缺省的值,整型是 0,布尔 型是false,而浮点型是0.0f,弓I用类型(类类型)的实例变量的缺 省值是null (没有进行实际的初始化,对它的使用将引起 nullpointexception ),类变量的规则

8、和实例变量一样,不同的是类 变量的初始化是在类被加载时。24、public void test() try on emethod();system.out.pr in tl n(c on diti on 1); catch (array in dexoutofbo un dsexceptio n e) system.out.pr in tl n(c on diti on 2); catch(excepti on e) system.out.pr in tl n(c on diti on 3); fin ally system.out.pr intln (fi nally);which will

9、 display if on emethod run no rmally?a. con diti on 1b. con diti on 2c. con diti on 3d. fin ally(ad)题目:在onemethod()方法运行正常的情况下将显示什么?如果try块中的语句在执行时发生异常,则执行从该处中断而进 入catch块,根据异常的类型进行匹配,最前面的优先进行匹配比较, 只要该异常是catch中指定的异常的子类就匹配成功进而执行相应 的catch中的内容,而fin ally块中的内容无论是否发生异常都将被 执行。25、given the following code:publi

10、c class test void prin tvalue(i nt m)do system.out.pri ntln (the value is+m);while( -m 10 )public static void mai n(stri ng arg) int i=10;test t= new test();t.pri ntvalue(i);which will be output?a. the value is 8b. the value is 9c. the value is 10d. the value is 11(c)题目:给出下面的代码:输出将是什么?此题考察的是do while

11、循环和-操作符的知识,do while最 少被执行一次,在执行完do中的内容后判断while中的条件是否为 true,如果为true的话就再执行do中的内容,然后再进行判断,以 此类推直到while的判断为false时退出循环执行循环后面的内容, 而?操作符的规则是在变量右边的-将先进行运算,然后才是使变量的值减一,而在变量左边的是先将变量的值减一再运算。are true?a. declarati on of primitive types such as boolea n, byte and so on does not allocate memory space for the varia

12、ble.b. declarati on of primitive types such as boolea n, byte and so on allocates memory space for the variable.c. declarati on of non primitive types such as stri ng, vector and so on does not allocate memory space for the object.d. declarati on of non primitive types such as stri ng, vector ans so

13、 on allocates memory space for the object.(ad)题目:下面的有关声明的哪些叙述是对的a.对原始数据类型例如boolea n,byte的变量的声明不会为该变量分配内存空间。b.对原始数据类型例如boolea n,byte的变量的声明将为之分配内存空间。c.非原始数据类型例如stri ng,vector的变量的声明不会为该对象分配内存。d.非原始数据类型例如stri ng,vector的变量的声明会为该对象分配内存。对原始数据类型的变量的声明将为之分配内存并赋予一个缺省值,参见23题的叙述,而非原始数据类型的变量必须用 new xxxx() 分配内存及初

14、始化。但是严格来讲此题的答案有待确定,因为只有原 始类型的实例变量和类变量的声明在类对象被创建 /类被加载时完成内存的自动分配,而原始类型的局部变量必须显式初始化,从这点来看原始类型的局部变量没有被自动分配内存,SI275中只提出了非原 始数据类型的变量必须使用new xxxx()完成内存的分配而没有指出原始数据类型的变量是否在声明时即自动进行内存分配,而从局部变量不能在显式初始化前使用这点来看在声明时没有进行内存分配。因此答案a的正确性还有待官方的确定。27、in the java api documentationwhich sections arein cluded in a class

15、 docume nt?a. the descripti on of the class and its purposeb. a list of methods in its super classc. a list of member variabled. the class hierarchy(acd)题目:在java api文档中下面的哪些部分被包括在内a. 类及用途的描述b. 父类的方法的列表c. 成员变量的列表d. 类层次类文档的内容主要是:类层次、类及用途描述、成员变量列表、 构造方法列表、成员方法列表、从类层次上继承的方法列表、成员变 量的详细说明、构造方法详细说明、成员方法详细说

16、明。1) public void modify() 2) int i, j, k;3) i = 100;4) while ( i 0 ) 5) j = i * 2;6) system.out.pri ntl n (” the value of j is + j );7) k = k + 1;8) i-;9) 10) which line might cause an error duri ng compilati on?a. li ne 4b. li ne 6c. li ne 7d. li ne 8(c)题目:给出下面的代码:哪些行在编译时可能产生错误。这个问题在前面有关变量的类型及其作用域的

17、问题中讨论过,局部变量在使用前必须显式初始化,而代码中的变量k在使用前没有。scope are true?a. local variables defi ned in side a method are destroyed whe n the method is exited.b. local variables are also called automatic variables.c. variables defined outside a method are created when the object is con structed.d. a method parameter va

18、riable con ti nues to exist for as long as the object is n eeded in which the method is defi ned.(abc)题目:下面有关变量及其作用域的陈述哪些是对的。a. 在方法里面定义的局部变量在方法退出的时候被撤销。b. 局部变量也叫自动变量。c. 在方法外面定义的变量(译注:即实例变量)在对象被构造 时创建。d. 在方法中定义的方法的参变量只要该对象被需要就一直存 在。本题还是讨论变量的类型及作用域,参看前面的叙述。30、a class design requires that a member vari

19、able cannotbe accessible directly outside the class. which modifier shouldbe used to obta in the access con trol?a. publicb. no modifierc. protectedd. private(d)题目:类的设计要求它的某个成员变量不能被外部类直接访问。 应该使用下面的哪些修饰符获得需要的访问控制。这个在前面也有叙述,java有四种访问类型,分别为: public,protected,default,private ,其中 public 变量可以被所有的 外部类访问,而p

20、retected 的可以被同一个包及该类的子类访问, default即没有任何修饰符的变量可以被同一个包中的类访问,而 private变量只能在被该类内部被访问。题目中的外部类应该理解为 除该类自身的所有其它类,因此只有使用private可以达到要求。31give n the follow ing code fragme nt:1) stri ng str = n ull;2) if (str != n ull) (str.le ngth() 10) 3) system.out.pri ntl n(more tha n 10);4) 5) else if (str != n ull) (str

21、.le ngth() 5) 6) system.out.pr in tl n(less tha n 5);7) 8) else system.out.pri ntl n(en d); which line will cause error?a. li ne 1b. li ne 2c. li ne 5d. li ne 8(c)题目:给出下面的代码片断:哪些行将导致错误。此题需要将代码仔细看清楚,查询没有逻辑错误,if else的使用 没有问题,也没有拼写错误,错误在于第5行的 与 操作符的使用,逻辑操作符(logical operator )的与应该是,而在执行与操作 的时候,如果第一个条件为false,那么第二个条件判断运算是不做 的,但是这里是位逻辑操作符(bitwise logical operator )的与, 在进行这个运算时,无论第一个条件的结果是什么都会执行第二个的 运算,因此,假设 str二null,那么第5句的str.length()就会导致 n ullpoi nterexce

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论