Java: 命名的讲究
1、类名
类名通常以名词结尾。而且在类名中要体现它是以保存数据为主还是提供功能为主。例如 ConnectionBuilder 这个类我们都可以猜到它的主要功能是创建 Connection 对象,
以动词-er/or 结尾的类名,至少应该包含一个以该动词开头的方法。例如 ConnectionBuilder 这个类,它至少应该包含一个以 build- 开头的方法。有了这种默契,别人就能更方便的使用这个类。
2、增删改查方法的命名
以对 Person 类的增删改查为例——
创建一个 Person对象的方法一般命名为 createPerson()/newPerson(),
添加方法命名为 addPerson(),修改方法命名为 updatePerson(),
删除方法命名为 deletePerson()/removePerson(),
根据主键查询的方法命名为 getPerson()/queryPerson()。
根据其他条件来查询,要指出具体的条件类型,例如 getPersonByName() 或 getPersonByAge()。
方法的名称要统一。例如一开始用的是 deleteXXX 而不是 removeXXX,那么整个项目都应该这样用下去。
3、计数方法
计数方法通常命名为 getNumberOfXXX()/getXXXCount()。例如 getNumberOfRows(),getQuestionCount()。
4、返回 boolean 值的方法
在 JavaBean 中,返回 boolean 属性必须用 isXXX() 命名。
检查某个属性是否为空或者某条记录是否存在的方法,通常命名为 hasXXX(),例如 hasResult()。
检查对象状态的方法通常以 is+形容词 命名。例如 isClosed(),isReady()
5、返回集合对象的方法
返回集合对象的方法应该体现出复数形式,例如 getPersons(),也可以体现容器类型,例如 getPersonList()。
6、不要简化单词
不要写 getHisList(),而要写 getHistoryList();不要写 usrno,而要写 userNumber。一个简单的原则是要能够把这个名字读出来。
7、参数命名应该精确
createUser(String str1, String str2) 看起来很难懂,但要是写成 createUser(String userName, String password) 就很好懂了。
8、返回值命名为 result
在一个方法中将返回值命名为 result,能够让方法的脉络更清晰。
9、接口
接口命名没有什么专门的原则,和类名一样要能够准确体现接口的功能。
有人喜欢在接口名字前面加 I。完全可以。不管加不加,都要保证整个项目的统一性。
Java: 变量的值和引用
广义的说,在 Java 中,凡是可以指向一个对象或包含一个值的标识符,都可以称为变量。
变量的内容,有可能是一个值,也有可能是指向一个对象的引用。
当变量的类型为基本型别(short, byte, int, long, float, double, boolean, char)时,变量的内容是一个值;当变量的类型为 Object 及其子类时,变量的内容是指向一个对象的引用。例如:
int a = 3; String s1 = "Hello!"; String s2 = s1;
这时变量 a 的内容就是 3,变量 s1 的内容就是指向一个字符串对象的引用,s2 则和 s1 一样指向该对象。如果执行了下面的语句:
a = 4; s1 = "Hello again!";
这时变量 a 的内容被改成了 4,s1 的内容改成了指向另一个字符串对象("Hello again!")的引用。s2 则还是指向原先的那个字符串("Hello!")。
接下来谈方法的调用。方法的调用是传值的。例如下面这个方法:
void f(int i, String s) { i = 100; // i 的值改成了 100 s = "Hi!"; // s 现在指向字符串 "Hi!" }
当调用 f(a, s1) 时,变量 a 和 s1 的值被赋给参数 i 和 s,然后才执行 f 方法。也就是说,无论 i 和 s 怎么变,都不会影响 a 和 s1 的值。
接下来是一个稍微复杂的例子。首先定义一个方法:
void f(int i, List list) { i = 10; list.add("Hello!"); }
假设再执行下面的句子:
int a = 3; List l = new ArrayList(); f(a, l);
那么执行之后是什么结果呢?
i 和 a 是两个不同的变量,i 的值变了不会影响 a,所以 a 的值还是 3;
list 和 l 是两个不同的变量,但它们指向同一个 List 对象。f 的执行过程中给这个 List 对象添加了一个元素,那么执行完之后,通过 l 变量我们可以取到这个元素:
l.get(0); // "Hello!"
但如果 f 这样写:
void f(int i, List list) { i = 10; list = new ArrayList(); list.add("Hello!"); }
那么 list 首先引用到另一个 List 对象去了,改变的是另一个 List 对象的内容,所以变量 l 指向的 List 对象没有改变,l.size() 仍然是 0。
像这样的概念,初学者可能容易混淆;但只要多练习,很快就能熟悉了。
本文向大家介绍C# 基础入门--变量,包括了C# 基础入门--变量的使用技巧和注意事项,需要的朋友参考一下 使用变量分为3步:声明、赋值、使用。 声明变量的语法:数据类型 变量名; 给变量赋值的语法:变量名=值; 运行结果为: 变量的声明和赋值可以同时完成,上面代码Main()方法中的前两行可以改写为: int age=18;//声明并赋值 练习题: 这段代码打印的是:我今年21岁 以上就是本文的
本文向大家介绍C# 基础入门--常量,包括了C# 基础入门--常量的使用技巧和注意事项,需要的朋友参考一下 常量,顾名思义,就是“不会改变的量”。 我们平时书写的数字(比如12.85)、字符(比如'F')、字符串(比如"谢谢"),它们都属于“字面常量”。 有一些常量既重要又容易出错,比如圆周率π的值为3.1415926......,所以,我们常常会使用自定义常量。如: const 关键字,表明PI
如何使像这样打印: 在调试过程中,我曾在许多地方将许多打印语句作为日志编写。我会写这样的声明 我想要一个打印变量名和变量值的方法。在C中,可以按如下方式进行: 有什么办法可以做到这一点吗? 提前感谢。
本文向大家介绍java语言基础之标识符和命名规则详解,包括了java语言基础之标识符和命名规则详解的使用技巧和注意事项,需要的朋友参考一下 标识符 Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符 技巧:凡是自己可以起名字的地方都叫标识符 定义合法标识符规则: 由26个英文字母大小写,0-9 ,_或 $ 组成 数字不可以开头。 不可以使用关键字和保留字,但能包含关键字和保留字。
本文向大家介绍详解Python中的变量及其命名和打印,包括了详解Python中的变量及其命名和打印的使用技巧和注意事项,需要的朋友参考一下 在程序中,变量就是一个名称,让我们更加方便记忆。 提示:下划线一般用在变量名中表示假想的空格。让变量名的可读性高一点。 运行结果: 更多的变量和打印 现在我们输入更多的变量并打印他们,通常我们用""引住的叫字符串。 字符串是相当方便的,在练习中我们将学习
本文向大家介绍PHP语法小结之基础和变量,包括了PHP语法小结之基础和变量的使用技巧和注意事项,需要的朋友参考一下 最近有个H5项目的需求,需要服务端,考察过后决定用PHP实现一个HTTP服务端,于是开始重温PHP语法,顺便记录一下要点,以便随时重温。内容摘抄自w3school的PHP手册,并按照自己的理解重新进行了整理。 PHP是什么? PHP 是 "PHP Hypertext Preproce