所以我对“setter”和“getter”方法有疑问,以及它们是否有用.
假设我只是写了一个非常基本的程序,如下所示:
public class Account
{
String name;
String address;
double balance;
}
然后,假设我编写另一个使用此“帐户”类的类,如下所示:
class UseAccount
{
public static void main(String[] args)
{
Account myAccount = new Account();
Account yourAccount = new Account();
myAccount.name = "Blah blah"
}
}
等等
当我写myAccount.name =“Blah blah”时,我正在更改“帐户”类中变量“name”的值.我可以自由地按照我喜欢的方式执行此操作.但是,我注意到,最好将“帐户”类中的变量设为私有,然后使用“setter”和“getter”方法.所以,如果我写下面的内容:
public class Account
{
private String name;
private String address;
private String balance;
public void setName(String n)
{
name = n;
}
public String getName()
{
return name;
}
}
我仍然可以通过创建另一个具有以下内容的类来更改变量“name”的值:
class UseAccount
{
public static void main(String[] args)
{
Account myAccount = new Account();
myAccount.setName("Blah blah");
}
}
我不明白使用这种方法有什么不同或者应该阻止人们改变私有领域的价值.有帮助吗?