java 基础之JavaBean属性命名规范问题
时间:2019-03-30
本文章向大家介绍java 基础之JavaBean属性命名规范问题,主要包括java 基础之JavaBean属性命名规范问题使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
java 基础之JavaBean属性命名规范问题
JavaBean属性名要求:前两个字母要么都大写,要么都小写
下面我们来找找如果不遵循这个规范是个什么样子??
因为本人还没有用反射来通过不规范的属性名来查找相应的属性值,所以以下的结论都是我的猜测。如果有错误欢迎大家来指正!!!
package com.domain; import java.beans.BeanInfo; import java.beans.Introspector; import java.beans.PropertyDescriptor; class Test{ private String AA; private String Bb; private String cC; private String dd; public String getAA() {//如果通过AA属性名查找属性值,能成功 return AA; } public void setAA(String aA) { AA = aA; } public String getBb() {//如果通过Bb来查找属性值,不能成功,必须通过bb来查找 return Bb; } public void setBb(String bb) { Bb = bb; } public String getcC() {//如果通过cC来查找属性值,能成功 return cC; } public void setcC(String cC) { this.cC = cC; } public String getDd() {//如果通过dd来查找属性值,能成功 return dd; } public void setDd(String dd) { this.dd = dd; } } public class JavaBean_02 { public static void main(String[] args)throws Exception { BeanInfo beanInfo = Introspector.getBeanInfo(Test.class); PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors(); for(int i=0;i<pds.length;i++){ System.out.println(pds[i].getName()); } } } /*输出: AA bb cC dd */
很明显,遵循规范写出来的get方法是很美观的。
通常属性名是要和 包名、类名、方法名、字段名、常量名作出区别的:
首先:必须用英文,不要用汉语拼音
1:包(package):用于将完成不同功能的类分门别类,放在不同的目录(包)下,包的命名规则:将公司域名反转作为包名。比如www.sohu.com 对于包名:每个字母都需要小写。比如:com.sohu.test;该包下的Test类的全名是:com.sohu.Test.Java 。
如果定义类的时候没有使用package,那么java就认为我们所定义的类位于默认包里面(default package)。
2:类:首字母大写,如果一个类由多个单词构成,那么每个单词的首字母都大写,而且中间不使用任何的连接符。尽量使用英文。如ConnectionFactory
3:方法:首单词全部小写,如果一个方法由多个单词构成,那么从第二个单词开始首字母大写,不使用连接符。addPerson
4:字段:与方法相同。如ageOfPerson
5:常量:所有单词的字母都是大写,如果有多个单词,那么使用下划线链接即可。
如:public static final int AGE_OF_PERSON = 20; //通常加上static
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
- python编码问题
- 微信支付推出人脸识别智慧时尚试衣间,无感购物即将来袭
- 如何判断你买的域名有没有被K过?
- 【设计模式】Factory模式
- Windows:将cmd命令行添加到右键中方法
- 回家的低价票难抢?注意!可能是被“爬虫”吃了
- DeepMind团队回顾2017年:想象、推理取得突破
- flask-mail发送QQ邮件代码示例(亲测可行)
- 数据结构与算法C#版笔记--排序(Sort)-下
- pip --upgrade批量更新过期的python库
- 数据结构与算法C#版笔记--排序(Sort)-上
- android 模拟器安装二三事
- 2017小程序发展大事件和未来3大趋势分析
- [复习]The C Programming Language 2nd 习题集(1.1-1.10)
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 【Vue.js】Vue.js中的Vuex、Vue-Ajax和京东购物车项目实战
- ubuntu16.04安全小结-01
- 重新认识HTTP3xx重定向机制
- 【Vue.js】Vue.js中常用的UI组件库和Vue Router
- 四大查找算法
- 从Python调用堆栈获取行号等信息
- 详解supervisor进程管理
- Python时间模块常用操作总结
- rtmp规范1.0
- 实战|Python轻松实现动态网页爬虫(附详细源码)
- 排序算法 --- 桶排序
- 8086汇编语言——操作内存中的数据
- JVM内存模型不再是秘密
- Python Google Protocol Buffer
- 看了这个总结,其实 Matplotlib 可视化,也没那么难!