在编写很小的构造器时(这是十分常见的),常常在参数命名上出现错误。通常,参数用单个字符命名:
- public Employee(String n, double s)
- {
- name = n;
- salary = s;
- }
但这样做有一个缺陷:只有阅读代码才能够了解参数n和参数s的含义。于是,有些程序员在每个参数前面加上一个前缀“a”:
- public Employee(String aName, double aSalary)
- {
- name = aName;
- salary = aSalary;
- }
这样很清晰。每一个读者一眼就能够看懂参数的含义。
还一种常用的技巧,它基于这样的事实:参数变量用同样的名字将实例域屏蔽起来。例如,如果将参数命名为salary,salary将引用这个参数,而不是实例域。但是,可以采用this.salary的形式访问实例域。回想一下,this指示隐式参数,也就是被构造的对象。下面是一个示例
- public Employee(String name, double salary)
- {
- this.name = name;
- this.salary = salary;
- }
C++注释:在C++中,经常用下划线或某个特定的字母(一般选用m或x)作为实例域的前缀。例如,salary域可能被命名为_salary、mSalary或xSalary。Java程序员通常不这样做