A.不允许出现任何魔法值(即未经预先定义的常量)直接出现在代码中
B.魔法值是指程序中随意定义并赋值的变量值,如果代码编写者明白变量值意义是可以任意使用的,例如在代码中写if(status==3)returnerror;符合规范
C.如果变量值仅在一个范围内变化推荐用Enum类
D.在程序中,一律禁止使用枚举类型
第1题:
A.String类型的默认值设定为空字符串
B.Date类型的默认值设定为newDate()
C.集合类型的默认值设定为Collections.EMPTY_LIST
D.不要设定任何属性默认值
第2题:
A.对varchar类型的字段建立索引,必须指定索引长度
B.对varchar类型的字段建立索引,不需要指定索引长度,这样索引区分度最好
C.业务上具有唯一特性的字段(含组合字段),必须指定唯一索引
D.建复合索引时,一般选择区分度高的字段放在最左列
第3题:
A.Longa=2L;//大写的L
B.Longa=2l;//小写的1
C.常量只定义一次,不再赋值,所以不需要命名规范
D.不要使用一个常量类维护所有常量,应该按常量功能进行归类,分开维护
第4题:
A.所有的抽象方法(包括接口中的方法)必须要用javadoc注释
B.所有的方法,包括私有方法,最好都增加注释,有总比没有强
C.过多过滥的注释,代码的逻辑一旦修改,修改注释是相当大的负担
D.我的命名和代码结构非常好,可以减少注释的内容
第5题:
A.推荐if-else的方式可以改写成卫语句的形式
B.尽量减少try-catch块内的逻辑,定义对象、变量、获取数据库连接等操作可以移到try-catch块外处理
C.if(condition)statements;单行语句不需要使用大括号
D.在一个switch块内,都必须包含一个default语句并且放在最后,即使它什么代码也没有
第6题:
A.防止pagesize过大导致内存溢出
B.防止正则输入源串拒绝服务ReDOS
C.防止任意重定向
D.预防SQL注入
第7题:
A.对于是与否概念的列名,必须使用can_abc来表示
B.对于是与否概念的列名,必须使用is_abc来表示
C.数据类型是varchar(1)(Y表示是,N表示否)
D.数据类型是unsignedtinyint.(1表示是,0表示否)
第8题:
A.分页查询,当统计的count为0时,应该直接返回,不要再执行分页查询语句
B.iBATIS自带的queryForList(StringstatementName,intstart,intsize)分页接口有性能隐患,不允许使用
C.定义明确的sql查询语句,通过传入参数start和size来实现分页逻辑
D.可使用存储过程写分页逻辑,提高效率
第9题:
在Java的方法中定义一个常量要用const关键字。
第10题:
java中,用()关键字定义常量。
第11题:
符号常量的定义应该放在所有语句之前
符号常量不可以是字符型常量
在一个程序单位中定义一个符号常量后,不能再改变它的值
符号常量定义语句与赋值语句一样,是可执行语句
第12题:
在Serializable接口中定义了抽象方法
在Serializable接口中定义了常量
在Serializable接口中没有定义抽象方法,也没有定义常量
在Serializable接口中定义了成员方法
类通过实现Serializable接口以启用其序列化功能
第13题:
A.对于“明确停止使用的代码和配置”,如方法、变量、类、配置文件、动态配置属性等要坚决从程序中清理出去,避免造成过多垃圾
B.永久弃用的代码段注释掉即可,即不用加任何注释
C.对于暂时被注释掉,后续可能恢复使用的代码片断,在注释代码上方,统一规定使用三个斜杠(///)来说明注释掉代码的理由
D.不要在视图模板中加入任何复杂的逻辑
第14题:
A.如果需要捕获不同类型异常,为了方便处理,可以使用catch(Exceptione){...}
B.不要捕获异常后不处理,丢弃异常信息
C.捕获异常与抛异常,必须是完全匹配,或者捕获异常是抛异常的父类
D.异常定义时区分unchecked/checked异常,避免直接使用RuntimeException抛出
第15题:
A.版本号命名格式:主版本号.次版本号.修订号
B.主版本号:产品方向改变,或者大规模API不兼容,或者架构不兼容升级
C.次版本号:保持相对兼容性,增加主要功能特性,影响范围极小的API不兼容修改
D.修订号:保持完全兼容性,修复BUG、新增次要功能特性等
第16题:
A.线程资源必须通过线程池提供,不允许在应用中自行显式创建线程
B.同步处理时,能锁部分代码区块的情况下不要锁整个方法;高并发时,同步调用应该考虑到性能损耗
C.创建线程或线程池时,推荐给线程指定一个有意义的名称,方便出错时回溯
D.推荐使用Executors.newFixedThreadPool(intx)生成指定大小的线程池。(线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式)
第17题:
A.主键索引(primarykey),字段类型为unsignedbigint、单表时推荐自增、步长为1
B.主键索引(primarykey),字段类型为unsignedbigint、单表时推荐自增、步长为2
C.唯一索引(uniquekey),命名规则为uk_字段名(如果多个字段继续下划线)
D.普通索引(normalindex),标记成idx_字段名(如果多个继续下划线)
第18题:
A.在接口类中的方法和属性使用public修饰符
B.对于Service类,内部的实现类加Impl的后缀与接口区别。例如:ProductServiceImpl实现ProductService接口
C.对于Service类,基于SOA的理念,是以接口方式暴露服务
D.尽量不在接口里定义变量,如果一定要定义变量,肯定是与接口方法相关,而且是整个应用的基础常量
第19题:
A.所有的POJO类属性必须使用包装数据类型
B.RPC方法的返回值和参数必须使用包装数据类型
C.因为JAVA的自动装箱与拆箱机制,不需要根据场景来区分数据类型
D.所有的局部变量推荐使用基本数据类型
第20题:
A.IDE的textfileencoding设置为GBK格式
B.IDE的textfileencoding设置为UTF-8格式
C.IDE中文件的换行符使用unix格式
D.IDE中文件的换行符使用windows格式
第21题:
下列关于java.io.Serializable接口描述中,正确的是()。
第22题:
Java语言中常量的定义是哪项?()
第23题:
静态方法
常量
构造方法
抽象方法