SCJP考题16

转载 2007年10月13日 15:46:00

1.             Wich three are valid declarations of a char?(choose three)

A   char c1=064770;

B   char c2=’face’;

C   char c3=0Xbeef;

D   char c4=/u0022;

E   char c5=’/iface’;

F   char c6=’/uface’;

 

A

C

F

2.what is the numerical range of a char ?(choose one)

 A -128 to 127

 B –(2^15)to(2^15)-1

 C 0 to 32767

 D platform dependent

 E 0 to 65535

 

E

 

3. which three are valid declarations of a float?(choose three)

 A float f1= -343;

 B float f2=3.14;

 C float f3=0X12345;

 D float f4=42e7;

 E float f5=2001.0D;

 F float f6=2.81F;

 

A

C

F

 

4. which two of the following are legal declarations for nonnested (非嵌套)class and interface (choose two)

A final abstract class test{}  final abstract 不能同时用在一个类中

B public static interface test{}  接口和类不能声明为static

C final public class test{}

D protected abstract class test{}

E protected interface test{}   protected 不能标识类和接口

F abstract public class test{}

 

C

E

5How many of the following are legal method declarations?

A  protected abstract void m1();

B  static final void m1(){}

C  transient private native void m1(){}  transient 只适用于变量声明,而不适用于类和方法声明。

D  synchronized public final void m1(){}

E  private native void m1();

F  static final synchronized protected void m1(){}

A

B

D

E

F

 

6.which two are valid declarations within an interface?(choose two)

A  public static short stop=23;

B  protected short stop=23;

C  transient short stop=23;

D  final void madness(short stop);

E  public Boolean madness(long bow);

F  static char madness(double duty);

接口不能是protected, transient,final , static

 

A

E

7Which three are valid method signatures in an interface?(choose three)

A  private int get Area();  接口方法必须是public

B  public float getVol(float x);

C  public void main(String[] args);

D  public static void main(String[] args); 不能是static

E  Boolean setFlag(Boolean [] test[]);

B

C

D

 

 

 

 

 

 

 

 

 

1以如下方式构造一个二维数组

 

数组名称 = new 元素数据类型[元素数N][];

数组名称[0] = new 元素数据类型[元素个数];

           … …

数组名称[N-1] = new 元素数据类型[元素个数];

 

例如: aArray = new String[2][];

        aArray[0] = new String[3];

        aArray[1] = new String[2];

2.一个二维数组如下:

            int[][] aArray;

            aArray = new int[1][];

            aArray[0] = new int[3]; : aArray.length 得到 1

            aArray[0].length 得到 3

3.         第一种方法

int[] max = {3,6,9};

String[][] s = {{“Hello”, “Java”}, {“北大方正”, “软件技术”, “网络”}};

第二种方法:

int[] max;

max = new int[]{3,6,9};

4.数组的合法赋值

      一.对于原始数据类型的数组,其元素在赋值时,既可以使用数组声明的那个类型的值,也可以使用那些可以自动转换成该类型的值

具体地说,如果声明了一个整型数值int类型的数组,则我们可以用,byte,char,short,int等类型的值来给这个数组赋值

      二.对于非原始数据类型的数组,其元素在赋值时,既可以使用数组声明的那个类型的值,也可以使用那些与该类型具有IS-A关系的类型的值

具体地说,如果声明了一个A类型的数组,则我们可以用A的子类类型来给这个数组赋值,如果A是一个接口(interface)类型,则所有实现了这个接口的类都是合法的

      三.对于原始数据类型的数组,对其引用赋值时,只能使用相同类型的数组,而且维数也必须相同,但数组的长度可以是任意的

不要被自动类型转换所蒙骗,自动类型转换是在原始数据类型之间进行的,而数组尽管保存的是原始数据类型的量,但它本身是一个对象,不是原始数据类型,数组的引用是对一个对象的引用,也不是原始数据类型

四.对于非原始数据类型的数组,在对其引用进行赋值,既可以使用相同类型的数组,也可以使用那些与该类型具有IS-A关系的类型的数组,只要它们的维数相同

具体地说,如果R是一个A类型数组的引用,则我们可以将A的子类类型的数组赋值给R,如果A是一个接口(interface)类型,则所有实现了这个接口的类型的数组都是合法的

5.修饰符分为访问修饰符和非访问修饰符

访问修饰符:public,   protected   ,private

非访问修饰符:strictfp   ,final,    abstract

6

一.Java的类来说,只有public和默认的访问控制是有意义的,也就是说,在类的定义前面,或者使用public的访问控制,或者什么也不写,使用默认的访问控制

 

7.最终:final

final用于修饰方法,则该方法不能在子类中被重写

final用于修饰变量,则该变量表示一个常量,只能在初始化时被赋值,不能再在其它地方被赋值

final还可以用于修饰方法的参数,指出这个参数在方法体中不能被赋值修改

 

同步方法:synchronized

synchronized用于修饰方法,表明该方法一次只能被一个线程所访问

synchronized不能与abstract一起使用,也不能用于变量和类,但它可以和public,protected,private,final等一起使用

 

本地方法:native

native用于修饰方法,表明该方法是用其它与平台相关的语言设计的,比如C

native不能与abstract一起使用,也不能用于变量和类

 

strictfp

strictfp用于修饰方法,表明该方法中的浮点操作遵守IEEE754标准

strictfp可以用来修饰类和非抽象方法

strictfp不能与abstract一起使用,也不能用于变量

 

瞬态变量:transient

在对包含用transient修饰的实例变量的对象作串行化处理时应该跳过这个变量

 

挥发变量:volatileJVM,访问该变量的线程要使其私有拷贝与内存中的主拷贝一致,在考试中,对上述两个修饰符的要求基本上就是:它们是保留关键字,只能应用于实例变量

 

8abstract不能与final一起使用

abstract不能与private一起使用

abstract不能与synchronized一起使用

abstract不能与native一起使用

abstract不能与strictfp一起使用

abstract不能与static一起使用

最后:abstract不能用于成员变量

 

9.在interface中定义的变量都是final,虽然它前面也许什么都没写,实际上所有接口变量都是

public static final

 

10.局部变量不可以使用任何访问修饰符

局部变量也不可以使用除final以外的任何其它非访问修饰符

任何在局部变量上使用不法修饰符的代码都会得到一个编译错误

 

11instanceof比较其左边的对象是不是右边的类型

 例如: a instanceof String;

 测试对象a是不是一个字符串类型的对象

 

实际上,左边的对象如果与右边的类型具有is-a的关系时,都将返回true

 

 

 

12.断言语句非常简单,有两种格式:

1.     assert(布尔表达式);

2.     assert(布尔表达式):信息字符串

 

如果布尔表达式为false,就产生一个AssertionError,第二种情况时,那个信息字符串会被放到栈里

1.     在编译时使用参数 –source1.4

2.             在运行时使用参数 –ea 开启断言

3.             在运行时使用参数 –da 关闭断言

 

 javac –source 1.4 Hello.java

 java –ea Hello

 java –da Hello

 

13 IS-A的关系来自于继承

子类IS-A父类,子类父类

       HAS-A的关系来自于对象之间的调用

一个类A HAS-A 另一个类B,是指在类A中有对B的对象的调用

14

在重写中,所谓子类中方法的访问控制不能比父类中方法的访问控制范围窄是指:

Ø     一个package方法可以被重写为packageprotectedpublic

Ø     一个protected方法可以被重写为protectedpublic

Ø     一个public方法只可以被重写为public

 

15

1.用this(…)调用重载的构造函数

2.用super(…)调用父类的构造函数

3this(…)或者super(…)调用必须是构造函数的第一条语句

4.子类的构造函数会自动调用父类无参数的构造函数

8.        抽象类可以有构造函数,但只能用来被子类的构造函数调用

9.     接口/interface没有构造函数

10.    构造函数可以有任意的访问控制符,甚至是private

11.    在一个构造函数里面,可以有this(…),也可以有super(…),但不能同时有都有

 

 

 

 

 

 

MySQL数据库float数据类型

怎么在mysql中使用float类型,特别是用到金钱时我们可能会用双精度来做,我们知道mysql的float类型是单精度浮点类型不小心就会导致数据误差 对于单精度浮点数Float:  当数据范围...
  • xiaoxiaohui520134
  • xiaoxiaohui520134
  • 2016年06月05日 02:06
  • 4284

浮点数float转换成十六进制字符串的方法(FloatToHex)

本文从原文:http://blog.csdn.net/cswangbin/article/details/6053569得到灵感 重新书写了float型转为十六进制的delphi程序 Functi...
  • u013183444
  • u013183444
  • 2013年12月26日 17:56
  • 3797

JavaScript实现浮点数转十六进制

最近一个嵌入式项目中需要WEB功能,因此想到利用HTML+JavaScript实现一些参数配置功能,参数由JavaScript生成十六进制数据,通过POST提交给单片机,然后再直接使用,以充分利用浏览...
  • yin138
  • yin138
  • 2013年10月29日 11:32
  • 1494

理解浮点类型float和double

c和c++对有效数位的要求是,float至少32位,double至少48位且不少于float,long double至少和double一样多(这里指的是二进制数)。通常来说,float为32位,dou...
  • goldstonefeng
  • goldstonefeng
  • 2015年10月11日 17:14
  • 3436

java中的double以及float型数据

java当中默认声明的小数是double类型的;  * double d=4.0  * 如果声明:  * float x = 4.0则会报错,需要如下写法:  * float ...
  • wswqd1994
  • wswqd1994
  • 2015年12月20日 17:05
  • 3623

float类型在值传递过程中出现的问题

标签: 头文件float 2013-04-01 14:44 211人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许不得转载。 编程中发现floa...
  • mirkerson
  • mirkerson
  • 2016年01月19日 09:34
  • 1134

float类型的精度问题与计算机中的存储

转自http://www.cnblogs.com/yewsky/articles/1864934.html和http://blog.csdn.net/soft200816/article/detail...
  • xu282934741
  • xu282934741
  • 2015年12月05日 10:32
  • 1405

为什么Long类型的比float类型的范围小?

作为一个常识,我们都知道浮点型在内存中占用的是4个字节的空间,而long型占用的是8个字节的空间。可是为什么今天在写JAVA程序时犯了一个错误,最后才知道4个字节 的float型的最大值会大于lon...
  • shanshan1yi
  • shanshan1yi
  • 2015年09月15日 22:36
  • 3757

OpenCV中double和float类型图像数据的访问

首先解释下结构体IplImage和类Mat
  • chinacoy
  • chinacoy
  • 2014年07月25日 14:29
  • 4211

判断两个float变量是否相等以及和 0 值比较方法

float 型: 占 4 字节,7 位有效数字 double 型:占 8 字节,15~16 位有效数字 浮点数的表示是不精确的,float 和 double 都不能保证可以...
  • zy986718042
  • zy986718042
  • 2017年05月24日 22:03
  • 1965
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SCJP考题16
举报原因:
原因补充:

(最多只允许输入30个字)