文档库 最新最全的文档下载
当前位置:文档库 › Java编程规范试题

Java编程规范试题

Java编程规范试题
Java编程规范试题

JAVA编程规范--试题

姓名:工号:部门:成绩:

一. 判断题(共15题,每题2分,直接在括号内打“√”或“×”)

1、任何时候都不要使接口可以序列化。x

2、相对独立的程序块之间、变量说明之后必须加空行。√

3、当程序需要释放对象的时候,应该手工调用finalize方法以释放对象。x

4、公司的规范要求注释率是20%以上,并且必须有助于对程序的阅读理解。x

5、为了程序更加简洁,我们应该尽量使用下面的方式来赋值:a = b = 1 。x

6、每个类都需要定义构建器。x

7、类名、方法名、属性名的命名,都应该使用意义完整的英文描述。√

8、main() 方法的定义是public static void main(String args[])。x

9、常量名应该使用全大写,英文单词之间用下划线或者-分隔开。并且,常量应该使用final

static修饰。x

10、公有方法参数名可以和属性名相同,但局部变量不能和属性名相同。√

11、一两行代码就能完成的功能没有必要编写方法实现。x

12、对于模块间接口方法的参数的合法性检查,调用者和被调用者都应该对参数进行合法性检查。

x

13、运行期异常使用RuntimeException的子类来表示,必须在方法声明上加throws子句。x非运

行期异常是从Exception继承而来的,不用在可能抛出异常的方法声明上加throws子句。x

14、使用ObjectStream 的方法后,调用release() ,释放对象。X

15、减小单个方法的复杂度,使用的 if, while, for, switch 语句要在10个以内。√

二、单项选择题(共23题,每题2分)

( c )1、排版时,代码缩进应该采用的方式是:

(A)Tab缩进

(B)2个空格缩进

(C)4个空格缩进

(D)8个空格缩进

( c )2、下面哪条语句是不符合规范的:

(A)

int count = 0;

int num = 0;

....;..;

}

(B)

long count = 0L;

long num = 0L;

....;..;

}

(C)

float count = 0f;

float num = 0f;

....;..;

}

(D)以上语句都符合规范

( b )3、对命名规范描述错误的是:

(A)、包名单词的首字母应该大写。

(B)、类、接口名的单词首字母应该大写。

(C)、方法名的单词首字母应该大写。

(D)、变量名的单词首字母应该大写。( b )4、下面那句话是正确的:

(A)、main() 方法的位置是可以随意放置的。

(B)、所有的变量都应该显示初始化。

(C)、线程中需要实现 start() 方法。

(D)、可以在运算中适当减小数据的精度,以减少计算量。( c )5、下面那条语句是符合编码规范的:

(A)、

for (int i = 0; i++; i < 10)

{

if ( isEnd )

{

i = 10;

}

}

(B)、

for (int i = 0; i++; i < 10)

{

if ( isEnd )

{

i = 11;

}

}

(C)、

for (int i = 0; i++; i < 10)

{

if ( isEnd )

{

break;

}

}

(D)、

for (int i = 0; i++; i < 10)

{

if ( isEnd == true)

{

break;

}

}

( a )6、下列对命名规范描述正确的是:

(A)、可以将类名的第一个字母改成小写作为变量名。

(B)、由于java是区分大小写的,因此,我们为两个类命名时,可以让其字符相同,仅

大小写不同,加以区分

(C)、属性名可以和方法名相同

(D)、方法的参数名一般不能和属性名相同,以免混淆。

( c )7、关于方法命名,下面那句话是正确的:

(A)、除了构建器外,定义和类名相同的方法名会产生编译错误。

(B)、如果没有定义构建器,那么可以定义和类名相同的方法名。

(C)、定义和类名相同的方法名不会产生错误,只是有时候容易混淆。

(D)、定义和类名相同的方法名不会有任何问题。

( c )8、关于servlet,下面那句话是错误的:

(A)、不要使用 () 方法。

(B)、不再使用HttpSession时,应该尽早使用 invalidate() 方法释放。

(C)、任何时候都不能使用Servlet的 SingleThreadModel。

(D)、不再使用JDBC资源时,应该尽早使用 close() 方法释放。

( c )9、下面那句话是错误的:

(A)、包的注释写入一个名为的HTML格式的说明文件放入当前路径。

(B)、注释应该与其上面的代码用空行隔开。

(C)、接口一般都非常简单,如一些方法申明等,可以不写注释,而到具体的实现类中

再写。

(D)、成员变量注释内容应该包括:成员变量的意义、目的、功能,可能被用到的地方。( d )10、关于安全,下面那句话是正确的:

(A)、任何时候都不要使用内部类。

(B)、任何时候都不要使类可以克隆。

(C)、任何时候不要使接口可以序列化。

(D)、为方法、属性和类定义明确的存取控制,并且尽量不要使用友好方法、属性和类。( c )11、下列关于注释说法正确的是:

(A)、包注释可有可无,一般大家都是看类注释和方法注释。

(B)、可以把一个类的类注释改为它的文件注释。

(C)、类注释应该放在package 关键字之后,class 或者 interface 关键字之前。

(D)、文件注释应该使用javadoc定义的方式注释,保证能够被收集并形成doc文档。

( b )12、关于国际化,下面那句话是错误的是:

(A)、不要使用 String 类的 compareTo(), equals() 方法。

(B)、在进行字符串连接时,不要使用String,使用StringBuffer。

(C)、不要使用 () ,() 方法。

(D)、字符和字符串常量应该放在资源文件中。

( b )13、关于复杂度,下面那句话是错误的是:

(A)、继承层次建议不要超过5层。

(B)、方法行数建议在10-50行。

(C)、方法参数建议不要超过5个。

(D)、类的行数建议不要超过1000行。

( d )14、下面代码,那个是符合编码规范的:

(A)、

private static String SERVER_NAME = “CLIENT”;

使用 final static 修饰。public final static int MAX_VALUE = 1000;

(B)、

class A

{

...;.;.;.;.;. . . . ..;.;.;.;..;.;品名.模块名称

(B)、.开发组名称.项目名称

(C)、.部门名称.模块名称

(D)、.部门名称.项目名称

( abcd )6、下面那些语句是不符合编码规范的:

(A)、

String data = receiveData();

String info = “” ;

while ( isEnd )

{

info = (data);

char ch = (point);

if (0) == ch)

{

isEnd = true ;

}

point ++ ;

}

(B)

String data = receiveData();

while ( isWait )

{

String info = “”;.;.;.;.;.;.;.;.;ength; j++) {

data1[i][j] = data[i][j];

}

}

(D)、

String[][] sendData = null ;

String[][] backupData = null ;

...;ength; j++)

{

backupData[i][j] = sendData[i][j];

}

}

( bc )9、异常捕获后,如果不对该异常进行处理,则下面哪些方法是正确的:(A)、使用()纪录日志 toString()

(B)、使用异常类的printStackTrace()方法打印异常信息

(C)、特殊情况下,可以不处理异常,只要用注释加以说明就可以了

(D)、使用空语句{}

( acd )10、关于程序中异常的处理,下面描述错误的是:

(A)、可以用异常来控制程序流程,因为异常的处理效率比条件分支高。

(B)、不要过多地使用异常,同时在捕获异常处理的时候,要尽量的捕获处理异常的最小子类。

(C)、根据程序结构决定使用异常还是使用错误码,还是混合使用。

(D)、当需要扔出一个ERROR类型的异常时,应该自定义一个ERROR的子类供使用。

( abcd )11、下面说法正确的是:

(A)、没有子类的友好类应该定义成 final。

(B)、没有被覆盖的友好方法应该定义成 final

(C)、不定义在包中没有被用到的友好属性、方法和类

(D)、不要定义不会被用到的局部变量、类私有属性、类私有方法和方法参数( abcd )12、下面那些语句是不符合编码规范的:

(A)

try

{

. ...

();

}

catch(IOException ioe)

{

();

...

}

(B)

if (high << 8 | low)

(C)

if (a | b && (a & c))

(D)

public interface TransInterface

{

public final static int TRANS_BUSY = 0;

public int getTransStatus();

}

相关文档