字段的使用场景:与类或者对象关系密切,建议使用private修饰。
属性的使用场景:对字段进行封装,提供get/set关键字,进行访问。
变量的使用场景:与类或者对象关系不密切,常常在方法或者语句块中使用。
字段和属性是相对于类而言的,而变量相对于方法或者语句块而言,可以再任何地方使用。
注:在Java当中,没有字段的概念。Java采用 property+get/set方法,C#中采用 private field+public property,C#的做法更合理,因为获取对象的数据,应该是访问者的动作,而不应该是对象的动作。Java的做法不符合编程思想。