1.基于类的访问权限
方法可以访问调用这个方法的对象的私有数据。一个方法可以访问所属类的所有对象的私有数据。
2.final实例字段
字段必须在构造对象时初始化。
class Employee
{
private final String name;
...
}
final 修饰符对于类型为基本类型或者不可变类的字段尤其有用。
对于可变类,final修饰符可能会造成混乱。
3.静态字段
如果将一个字段定义为static,每个类只有一个这样的字段。而对于非静态的实例字段 ,每个对象都有自己的一个副本。
例:
class Employee
{
private static int nextId=1;
private int id;
...
}
如果有1000个Employee类对象,则有1000个实例字段id,但只有一个静态字段nextId。即使没有Employee对象,静态字段nextId也存在。它属于类,而不属于任何单个的对象。
4.静态方法
静态方法是没有this参数的方法,可以访问静态字段。
下面两种情况可以使用静态方法:
- 方法不需要访问对象状态,因为它需要的所有参数都通过显式参数提供。
- 方法只需要访问类的静态字段。
5.工厂方法
类似LocalDate和NumberFormat的类使用静态工厂方法来构造对象。
6.main方法
main方法也是一个静态方法。main方法不对任何对象进行操作。
7.方法参数
java总是采用按值调用。也就是方法