java缩写规范_Java编码规范 · Issue #69 · bingoohuang/blog · GitHub

以下哪种Java类名的命名是合理的?(选2项)

A. PersonInfo B. payBill C. PersonWorking D. $Person

以下哪种常量命名是推荐的?(单选)

A. MAX_STOCK_COUNT B. MAX_COUNT C. MaxStockCount D. MaxCount

以下哪种说法是错误的?(单选)

A. 抽象类命名使用Abstract或Base开头

B. 异常类命名使用Exception结尾

C. 测试类命名以它要测试的类名开始,以Test结尾

D. 具体实现类使用Impl或者Implementation结尾

以下哪种命名没有体现出了设计模式?(单选)

A. OrderFactory B. LoginFactory C. ResourceObserver D. CustomPattern

以下哪个命名表示获取单个对象的方法?(单选)

A. getOrder B. listOrders C. countOrders D. addOrder E. delOrder F. modifyOrder

具体业务代码中,以下哪些命名是差劲的命名?(选4项)

A. data B. data2 C. info D. deal E. lockChargeCard

分层领域模型规约中,以下哪个是表示与数据库表结构一一对应,通过DAO层向上传输数据源对象?(单选)

A. DO(Data Object) B. DTO(Data Transfer Object) C. BO(Business Object)D. VO(View Object)

关于代码格式的说法,以下哪些是错误的?(选2项)

A. 使用统一的格式化工具,在保存时自动格式化代码。

B. 所有源文件以及配置文件等,都使用操作系统默认的编码形式。

C. 使用IDE/编辑器 ,应当显式化空白字符。

D. 注释的双斜线与注释内容之间不必有空格。

关于面向对象编程,以下哪些说法是正确的?(单选)

A. 可以使用类的实例(对象)来访问静态变量或者方法。

B. 所有的覆写方法,必须加@override注解。

C. 包装类对象之间值的比较,在Integer较小值时[-128,127],可以直接使用==来比较大小。

D. 分割字符串,推荐直接使用JDK的split方法。

关于简化代码,以下哪些说法是错误的?(单选)

A. 可以使用lombok来简化数据实体类的代码

B. 方法体行数不超过100行

C. 一个方法完成一次业务请求处理,即使业务请求相对复杂

D. 方法参数选择布尔类型,可能会带来阅读上的问题

以下哪些说法是错误的?(选3项)

A. 在foreach循环里可以进行元素的remove/add操作

B. 使用keySet方式对Map类集合进行遍历

C. 在集合项目较多时,推荐直接使用List的contains方法进行遍历、对比、去重操作

D. 具有元素唯一特性的集合,可以使用Set,Map。

在JDK7版本及以上,Comparator要满足如下哪三个条件,不然Arrays.sort,Collections.sort会报IllegalArgumentException异常?(选3项)

A. x,y的比较结果和y,x的比较结果相反。

B. x>y,y>z,则x>z。

C. x=y,则x,z比较结果和y,z比较结果相同。

D. x!=y, 则x, z比较结果和y,z比较结果不相同。

关于注释,以下哪些说法是错误的?(单选)

A. 注释也是代码,一旦写注释,就好好写,并且与相对应代码同步维护。

B. 所有的枚举类型字段必须要有注释,说明每个数据项的用途。

C. 注释应当标明代码的一些可能的副作用(比如非线程安全)等。

D. 为了让注释保持在总体代码量20%以上,应当多写注释。

关于日志,以下说法哪些是错误的?(单选)

A. 应用中不可直接使用日志系统(Log4j、Logback)中的API,而应依赖使用日志框架SLF4J中的API。

B. 建议使用lombok的@slf4j注解,进一步简化日志的写法。

C.日志输出中包含参数的话,必须使用使用占位符的方式。

D. 如果输出内容较多或者输出参数较长,可以考虑多次调用日志打印来输出。

E. 日志输出时,尽量输出关键点的上下文信息,包括输入参数,中间变量等。

关于单元测试,以下哪些代码必须有单元测试?(选3项)

A. 核心业务代码

B. 核心算法代码

C. 调用频繁的代码

D. 核心数据模型代码

以下哪些技能更加体现了程序员的专业性,而不只是厉害(牛B)而已?(选3项)

A. 能写复杂的代码

B. 有娴熟的开发技能

C. 能写可读的代码

D. 能写可维护的代码

E. 整洁第一(Clarity is king)

好的方法/函数,有哪些特征?(选4项)

A. 像讲故事一样流畅

B. 短小且只做一件事情

C. 符合从下到上的原则

D. 符合SLAP(单一抽象层次)原则

E. 理想情况下没有参数,最好不要超过3个

关于控制语句的使用,以下哪些说法是错误的?(单选)

A. 在一个switch块内,每个都case要通过break/return等来终止。

B. 在一个switch块内,都必须包含一个default语句并且放在最后,即使空代码。

C. 在if/else/for/while/do语句中必须使用大括号。即使只有一行代码。

D. 函数中表达异常的分支时,尽量使用卫语句来提前返回或者抛出异常。

关于代码安全,以下哪些说法是错误的?(单选)

A. 用户请求输入的任何参数,都必须做有效性验证。

B. 终端用户使用ID查询订单详情时,只需要检查ID是否是符合长度字母数字等规则。

C. 隶属于用户个人的页面或者功能必须进行水平权限控制校验。

D. 使用平台资源(譬如短信),必须实现正确的防重放限制,如数量限制、疲劳度控制、验证码校验,避免被滥刷导致资损。

关于并发编程,以下哪些说法是错误的?(选3项)

A. SimpleDateFormat 是线程不安全的类,不要定义为static变量,建议使用JodaDate作为替代。

B. 尽可能使加锁的代码块工作量尽可能的完整,比如在锁代码块中调用RPC方法完成完整的业务逻辑。

C. 对多个资源、数据库表、对象同时加锁时,按照使用的先后顺序进行加锁,防止死锁。

D. 子线程抛出异常堆栈,可以在主线程try-catch到。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值