{
return; }
LogWriter writer; int index;
48. 下述个项中,符合编码规范的是 d
A. if(writeToFile) writeFileThread.interrupt(); B. if(writeToFile){ writeFileThread.interrupt();} C. if(writeToFile){
writeFileThread.interrupt(); }
D. if(writeToFile) {
writeFileThread.interrupt(); }
49. 下列选项中,关于方法的命名不正确的是 d A. public String getType(); B. public boolean isFinished(); C. public void show(); D. public void AddKeyListener(Listener); 50. 下列选项中,不符合编码规范的是 d A. try {
//.... ... }
catch (IOException ioe) {
ioe.printStackTrace (); }
B. throw new IOException(\ C. try {
// ... ... }
catch(IOException ioe) {
//... ... }
finally {
try {
out.close(); }
catch (IOException ioe) {
//... ...
} } D. try {
// ... ... }
catch(IOException ioe) {
//... ... }
答案:
1.B 2.C 3.D 4.A 5.D 6.C 7.B 8.C 9.A 10.C
11.A 12.D 13.A 14.B 15.D 16.D 17.C 18.D 19.D 20.C 21.C 22.D 23.B 24. D 25. C 26.B 27.D 28.C 29.B 30.D 31.A 32.C 33.D 34.B 35.D 36.C 37.A 38.C 39.A 40.D 41.C 42.A 43.C 44.C 45.D 46.D 47.A 48.D 49.D 50.D
三.多选题(共10题,每题2分)
1. 下述各项中,符合编码规范的是 ab
A. 分界符(如大括号‘{’和‘}’)应各独占一行并且位于同一列,同时与引用它们的语句左对齐。
B. 较长的语句、表达式或参数(>80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读。
C. 建议把多个短语句写在一行中,便于阅读
D. if, for, do, while等语句的执行语句如果只有一行的话,不需要要加括号{}。
2. 下述各项中,不符合编码规范的是 ab
A. 相对独立的程序块之间、变量说明之后可以不加空行。 B. 对齐只使用空格键,对于在工具中,可以使用TAB键。
B. 在两个以上的关键字、变量、常量进行对等操作时,它们之间的操作符之前、之后或者前后要加空格;
D. if, for, do, while, case, switch, default 等语句自占一行。 3. 下述各项的代码中,符合编码规范的是 cd A. for (...) {
... // program code }
B. void example_fun( void ) {
... // program code }
C. if (filename != null && new File(logPath + filename).length() < LogConfig.getFileSize()) {
... // program code }
D. LogFilename now = null; LogFilename that = null;
4. 下述各项的代码中,符合编码规范的是 bd
A. if(writeToFile) writeFileThread.interrupt(); B. if(writeToFile) {
writeFileThread.interrupt(); }
C. if(log.getLevel() < LogConfig.getRecordLevel()) {
return; }
LogWriter writer;
D. if(log.getLevel() < LogConfig.getRecordLevel()) {
return; }
LogWriter writer; int index;
5. 下述各项中,不符合编码规范的是 ac
A. int a, b, c; B. flag=! isEmpty; i ++; C. if (current_time >= MAX_TIME_VALUE) D. p . id=pid;
6. 下述各项中,关于注释的描述正确的是 ad
A. 注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的注释)相邻位置。
B. 注释也可放在下面,如放于上方则需与其上面的代码用空行隔开。 C. 注释与所描述内容可以不采用同样的缩排。 D. 将注释与其上面的代码用空行隔开。
7. 下述各项中,关于注释的描述错误的是 ac
A. 对简单的变量的定义和分支语句(条件分支、循环语句等)可以不编写注释。 B. 对于switch语句下的case语句,如果因为特殊情况需要处理完一个case后进入下一个case处理,必须在该case语句处理完、下一个case语句前加上明确的注释。
C. 建议在代码写作完成后,统一添加注释。
D. 注释的内容要清楚、明了,含义准确,防止注释二义性. 8. 下述选项中,关于命名描述正确的是 ac
A. 包名采用域后缀倒置的加上自定义的包名,采用小写字母。 B. 包名可以根据需要自己定义即可,采用小写字母。
C. 类名和接口使用类意义完整的英文描述,每个英文单词的首字母使用大写、其余字母使用小写的大小写混合法。
D. 类名和接口使用类意义完整的英文描述,第一个单词的字母使用小写、剩余单词首字母大写其余字母小写的大小写混合法。 9. 下述选项中,关于类的设计描述不正确的是 bd
A. 明确类的功能,精确(而不是近似)地实现类的设计。 B. 一个类可以实现多组相近的功能。
C. 所有的数据类必须重载toString() 方法,返回该类有意义的内容。 D. 接口方法参数应由调用者和被调用者均对参数进行合法性检查。 10. 下述选项中,关于异常的处理描述正确的是 ab
A. 数据库操作、IO操作等需要使用结束close()的对象必须在try -catch-finally 的finally中close()。
B. 异常捕获后,如果不对该异常进行处理,则应该纪录日志或者ex.printStackTrace() 。
C. 自己抛出的异常不需要填写详细的描述信息。 D. 运行期异常使用RuntimeException的子类来表示,必须在可能抛出异常的方法声明上加throws子句。非运行期异常是从Exception继承而来的,不用在方法声明上加throws子句。 答案
1.AB 2.AB 3.CD 4.BD 5.AC 6.AD
7.AC 8.AC 9.BD 10.AB
四.改错题(共2题,每题5分)
第一题 /**
* delExpImpLog *
* @param request * request * @param indexes * indexes
* @param operateLog operateLog *
*/
[邵洪岗1] public void delExpImpLog(HttpServletRequest request, Integer[] indexes, OperateLog operateLog[邵洪岗2])[邵洪岗3]
{
// 初始化返回结果码 portalOperLog =
(PortalOperLog)BeanMaker.getBean(\);
// 初始化删除失败记录数 int errorCount = 0;
ExpImpLog expImpLog = null;
for (int i = 0; i < indexes.length; i++) {
Integer index = indexes[i]; try {
expImpLog = expImpDao.findByInnerIndex(index); if (null == expImpLog) {
// 写操作失败日志
portalOperLog.logDeleteFail(request,\deleted \,\,operateLog); continue; }
// 删除导入日志
expImpDao.delOneEcInfo(expImpLog);
File file = new File(expImpLog.getErrorFile()); if (\[邵洪岗file.exists())[邵洪岗 { {
runLog.info(\ + expImpLog.getErrorFile());
} } else {
runLog.error(\ + expImpLog.getErrorFile()
+ \);
//删除失败,失败记录加1
4].equals(request.getStateCode()) &&
5]
if (file.delete())