class Employee { } 表示一个类的声明,其中,class是关键字,Employee是类名。在一对大括号中的内容,我们叫做类体,是这个类的实现部分。
前面我们说过,类把数据和在数据上的操作方法封装起来,所以,类体中有两部分,一部分是数据,另一部分是方法。 数据部分是:
private String name; private double salary; private int hireDay;
分别是String类型的name,代表该员工的姓名,double类型的salary,代表该员工的薪水;int类型的hireDay,代表该员工的雇佣年份。
private是一个关键字,是私有的意思,表明这些数据,只能被类里面的方法访问,外部程序是不能直接访问这些数据的。这正是类的一个好处:对外隐藏数据。我们建议,始终保持数据的私用,也就是始终用private来修饰数据,来是我们的程序更安全。 这个类的方法部分是:
public Employee(String n, double s, Day d)
public void print()
public void raiseSalary(double byPercent)
public void raiseSalary(int byAbsolute)
public int getHireYear()
public static String getCompany()
所谓方法,就是对数据的操作,有过C编程时间的同学,可以把它理解为函数,只是这些函数是放在类里并对类的数据进行操作的。比如这个方法:
public void raiseSalary(double byPercent)就是对数据salary的操作。
public是一个关键字,是公有的意思,表明该方法可以用 对象名.方法名 的方式调用。比如我们的测试程序中: emp.raiseSalary(5.0D),就是对这个方法的调用。否则,如果是private,该方法就只能被类里的方法调用,像emp.raiseSalary(5.0D)这种调用是非法的。
void表明方法的返回类型为空,也就是什么都不返回。public int getHireYear()这个方法的返回类型是int。一般来说,返回类型这部分是不能缺少的,即使方法什么都不返回,也要用一个void关键字修饰。有一个例外:构造函数。我们后面会讲到。
raiseSalary(double byPercent)是方法名,前面我们已经说过方法的命名规则,第一个单词小写,以后没个单词首字母大写。这样可以增加可读性,根据raiseSalary这个名字就可以知道这个方法的功能是涨工资。括号里是参数列表,类似于我们前面学过的变量的声明。如果有多个参数,用逗号隔开,比如 Employee(String n, double s, int d)。
方法的一对大括号里是方法的实现,就是我们前面学过的语句的组合。比如print( )方法,是打印出该员工的姓名工资等信息;raiseSalary( )方法是根据参数,把员工工资涨相应的比例。注意,如果方法有返回类型且不为void,那么在方法的实现中必须有return语句,返回相应的类型。比如hireYear( )方法,就有return子句。相反,如果返回类型是void,那么不能返回任何数据,但可以是一个return语句,后面不带返回值,比如print( )方法里就有一个空的return语句。
|
|