开发者社区> 问答> 正文

百问百答 《Java开发手册(嵩山版)》

从java命名标准来讲,代码中的命名需要注意什么?

java中类名命名是用什么规则,有什么情形是例外的?

POJO类中的布尔类型变量要不要加is前缀,为什么?

接口和实现类中命名规则中,开发规范强制的是?

java规约中,常量定义的强制规则有哪些?

java规约中,哪些保留字与括号之间必须加空格?

java规约中,大括号的使用规则?

java规约中,单行字符限制是多少?换行时遵循什么原则?

java规约中,强制IDE的文件编码格式是?换行符是?

java规约中,代码格式推荐的有哪些?

复写方法时要添加什么注解?

12.java规约中,约定访问类的静态变量或静态方法用什么来访问?为什么?

13.Java规约中,强制在什么情况下才可以使用java的可变参数?

14.java规约中,约定外部调用依赖库接口时不允许进行什么操作?

15.当接口过时时,应该对过时接口进行什么操作?

16.object的equals方法容易出现什么问题?如何解决?

17.整型对象的值得比较用什么方法?

18.整型对象值得比较时,==和equals的区别?

19.java开发规约约定中如何定义货币金额?

20.浮点数可以直接进行运算操作吗?

21.BigDecimal的等值比用什么方法?

22.定义数据对象DO类时,属性类型要与什么保持一致?

23.可以构造方法 BigDecimal(double) 的方式把 double 值转化为 BigDecimal 对象?为什么?

24.基本数据类型与包装数据类型的使用标准有哪些?

25.在定义定义 DO/DTO/VO 等 POJO 类时,可以设定默认值吗?为什么?

26.序列化新增属性时,要避免修改什么字段?

27.在完全不兼容升级时,如何避免反序列化失败?

28.java规约中强制要求构造方法中不能包含什么?

29.java规约中POJO类必须要写什么方法?如何写?

30.java规约中,约定在POJO类中哪两个方法不能同时存在?

31.使用索引访问用 String 的 split 方法得到的数组时,需要做什么操作?为什么?

32.日期格式化中,表示年份的小写y和大写的Y有什么不同?

33.日期格式中,月份,分钟,12/24小时制分别怎么写?

34.java规约中,约定如何获取当前毫秒数?

35.java规约中,不允许在程序任何地方使用的方法有几个是什么?

36.规约中为什么不允许在程序中写死一年365天?

37.java规约中约定,月份如何来表示?

38.规约中强制关于hashcode和equals的处理必须遵循什么原则?

39.判断集合中元素是否为空,要使用什么方法?

40.使用 java.util.stream.Collectors 类的 toMap()方法转为 Map 集合时,要使用什么参数类型?

41.使用 java.util.stream.Collectors 类的 toMap()方法转为 Map 集合时,要注意什么?

42.ArrayList 的 subList 结果可以强转成 ArrayList吗?

43.使用 Map 的方法 keySet() / values() / entrySet() 返回集合对象时,不可以进行什么操作?为什么?

44.Collections 类返回的对象不可进行什么操作?

45.在 subList 场景中需要特别注意什么?

46.使用集合转数组的方法,要注意的是什么?

47.使用 Collection 接口任何实现类的 addAll()方法时,需要注意什么?

48.使用工具类 Arrays.asList()把数组转换成集合时,不能进行什么操作?

49.泛型通配符接收返回数据的时候要注意什么?

50.无泛型限制定义的集合赋值给泛型限制的集合时,使用集合元素时,要进行什么操作?为什么?

51.在foreach循环里不要对元素进行什么操作?

52.在jdk7版本以上 Comparator 实现类要满足什么条件?

53.在jdk7版本以上 Comparator 实现类不满足条件时会出现什么问题?

54.集合泛型定义时,要怎么处理?

55.集合初始化时要注意什么?

56.map类集合K/V能不能存储null的情况有哪些?

57.创建线程或线程池时要注意什么问题?

58.线程资源要怎么进行操作?

59.线程池创建要用什么方法来进行?

60.使用Executors创建线程池会造成什么问题?

61.SimpleDateFormat 是线程不安全的类,定义时要注意什么问题?

62.时间处理时一般要用什么类来进行?

63.对于自定义的threadlocal要注意什么问题?

64.一般在哪里进行对自定义的threadlocal变量进行回收?

65.高并发,同步调用时要注意什么问题?

66.对多个资源、数据库表、对象同时加锁时,要注意什么问题?

67.如何使用阻塞等待获取锁?

68. lock 方法与 try 代码块之间的方法调用抛出异常,会造成什么问题?

69. lock 方法在 try 代码块之内,会造成什么问题?

70.在使用尝试机制来获取锁的方式中,进入业务代码块之前,要做什么操作?

71.并发修改同一记录时需要做什么操作。

72.并发修改时应该怎么加锁?

73.并发修改时使用什么作为更新的依据?

74.多线程如何处理定时任务?

74.对资金相关的金融敏感信息,一般使用什么锁策略?

75.使用 CountDownLatch 进行异步转同步操作要注意什么?

76.为什么要避免 Random 实例被多线程使用?

77.switch语句块内的case要怎么终止?

78.switch括号内变量类型为string时要进行什么操作?

79.什么语句必须要用大括号?

80.三目运算符要注意什么?

81.在高并发场景中要注意使用什么作为判断条件?

82.类、类属性、类方法的注释必须使用什么注释规范?

83.所有的抽象方法要怎么注释?

84.所有的类必须要有什么信息?

85.方法内单行和多行要怎么注释?

86.修改代码的同时要修改什么?

87.前后端交互的API要明确什么?

88.前后端交互的协议一般用什么?

89.前后端交互的路径是什么?

90.前后端交互常见的请求方法有哪些?

91.前后端交互的请求内容要怎么处理?

92.前后端交互的响应体要怎么处理?

93.前后端数据列表接口返回空要怎么处理?

94.服务端发生错误时要返回前端什么?

95.状态码200表示什么?

96.状态码401表示什么?

97.状态码403表示什么?

98.状态码404表示什么?

99.状态码500表示什么?

100.前后端交互的json格式数据如何要求?

101.errorMessage是为了做什么的?

102.要使用超大整数的场景,服务端应如何返回?

103.http请求URL的传参是如何限制的?

104.http请求body传递内容时要控制什么?

105.在翻页场景时如何对用户输入的参数进行处理?

106.服务器内部重定向要用什么?为什么?

107.服务器外部重定向要用什么?为什么?

108.服务器返回信息标记为缓存是为什么?

109.服务返回数据,应该使用什么格式?

110.前后端的时间要统一吗?统一格式为?

111.使用正则表达式时,要怎么做比较快?

112. velocity 如何调用 POJO 类的属性?

113.后端输送给页面的变量要加什么?

114.使用 Math . random() 时要注意什么?

115.在数据结构构造和初始化要进行什么操作?

116.错误码的制定原则是什么?

117.在错误码中不要体现什么?

118.全部正常,需要错误码的话返回什么?

119.错误码的字符串类型有几位如何划分?

编号要如何进行管理?

错误码使用者要避免什么问题?

错误码不能直接做什么用?

错误码之外的信息要如何展示?

获取第三方错误码时要如何进行处理?

错误码分为几级,分别是什么?

java类中如何规避RuntimeException异常?

异常捕获后要如何进行处理?

在catch时要分什么情况来处理?

稳定代码指的是什么?

非稳定代码指的是什么?

如果需要回滚,要如何进行回滚?

在finally块要做什么处理?

不要在finally块中使用什么语句?

捕获异常与抛异常要进行怎样的处理?

在调用 RPC、二方包、或动态生成类的相关方法时如何捕捉异常?

方法的返回值可以为空时,要注意什么?

自动拆箱可能导致什么问题?

如何防止NPE问题?

应用中应使用什么日志系统?

日志最少应保存多少天?

日志输出时,字符串变量如何拼接?

对于 trace / debug / info 级别的日志输出要做什么处理?

日志配置文件中如何设置来避免重复打印日志?

生产环境禁止如何输出日志?

异常信息应该包括什么信息?

异常信息如果不处理,要怎么做?

日志打印时应禁止什么?

生产环境日志级别如何配置?

生产环境日志输出过多会导致什么问题?

到的单元测试必须遵循什么原则?

AIR原则是什么?

单元测试中应该如何验证?

为什么要保持单元测试独立性?

单元测试的基本要求?

单元测试的颗粒度要到哪种程度?

那些模块必须要确保单元测试通过?

单元测试代码要写在哪个目录下?

单元测试的基本目标是什么?

编写单元测试要遵守什么原则?

BCDE原则是什么?

和数据库相关的单元测试要怎么做?

隶属于用户个人的页面或者功能要做什么?

对用户敏感数据要怎么处理?

对用户输入的sql参数要怎么样限制?

如何防止SQL注入?

用户请求的任何操作要做什么验证?

禁止向HTML页面输出什么用户数据?

表单和AJAX提交要做什么验证?

URL外部重定向要执行什么操作?

表达是否概念的字段应如何命名?

表名,字段名的创建规则?

表名禁止使用什么?

MYSQL禁用什么?

主键索引怎么命名?

唯一索引怎么命名?

普通索引怎么命名?

MYSQL中小数类型如何设置?

如果存储类型几乎相等,用什么数据类型?

varchar是什么?

如果存储长度超过5000,使用什么数据类型?

表必备的三字段是哪些?

表的命名遵循什么格式?

数据库命名尽量与什么保持一致?

什么时候才推荐进行分库分表?

什么字段必须建成唯一索引?

join使用有什么限制?

在varchar字段上建立索引时,要注意什么?

页面搜索时禁止什么操作?

如果有order by的场景要注意什么?

利用覆盖索引来进行查询操作时要注意什么?

如何优化超多分页场景?

SQL性能优化的目标?

range指的是什么?

ref指的是什么?

consts指的是什么?

建组合索引时要注意什么?

如何防止索引失效?

SQL语句count时要注意什么?

count计算除null之外的不重复行数时要注意什么?

当某一列的值全是null是要注意什么?

SQL中如何判断是否为null值?

分页逻辑查询时,count为0 要怎么处理?

外键如何设置与使用?

存储过程为何被进制使用?

数据订正时要先进行什么操作?

数据操作时对多个表要怎么处理?

SQL语句中表的别名要怎么处理?

数据库中什么操作应该避免,避免不了如何处理?

数据库中如何存储表情?

truancate table和delete哪个比较快?

开发代码中为什么不建议使用truncate table

在表查询时要注意什么?

为什么不建议使用*作为查询字段?

pojo类的字段与属性要怎么处理?

返回参数不要使用什么?

resultMap要如何设置?

sql.xml配置参数要注意什么?

iBATIS自带的什么方法不建议使用?

结果集的输出不允许用什么方法?

更新记录表的同时要更新什么?

写数据库接口时要注意什么?

Transactional 事务不要滥用,为什么?

isEqual常用于哪里?

isNotEmpty常用于哪里?

isNotNull常用于哪里?

二方库依赖GAV规则指的是什么?

二方库版本号命名方式?

线上应用不要依赖什么版本?

正式发布的类要怎么处理?

二方库新增或升级要注意什么?

二方库枚举类型的使用?

依赖二方库群时要注意什么?

二方库依赖子项目中禁止什么?

什么地方要谨慎引入第三方?

pom文件中要注意什么?

二方库中不要有什么?

高并发服务器要注意什么?

要调大服务的什么,方便建立连接?

当并发数量很大时容易触发服务器的什么问题?

如何给jvm设置参数

线上生产环境如何设置jvm?

与系统交互的user设置要注意什么?

如果某个业务对象状态超过3个要怎么做?

如果某个系统功能链路设计对象超过3个要怎么做?

系统架构设计时要明确什么目标?

系统设计阶段要依赖什么原则?

系统扩展时要如何处理?

系统设计阶段对扩展和修改要怎么做?

系统设计阶段共性业务和公共行为要怎么做?

敏捷开发是什么? Java开发手册(嵩山版)下载地址

展开
收起
不语奈何 2021-03-25 13:30:32 1760 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载