我最近开始使用JDK1.6学习Java。如果这是一个愚蠢的问题,请原谅。类中的私有变量可以从Java中的main访问?
如果私有变量可以通过main()中的对象直接访问,它们是如何“私人”的?
public class Account1
{
private int accountNum;
private String name;
Account1() {
accountNum = 1101;
name = "Scott";
}
public void showData() {
System.out.println("Account Number: " + accountNum +
"\nName: " + name);
}
public static void main(String[] args) {
Account1 myA1 = new Account1();
myA1.showData();
System.out.println(myA1.accountNum); //Works! What about "Private"?!
}
}
其中给出的输出:
Account Number: 1101
Name: Scott
1101
小心 - 术语“局部变量”可能会引起误解。 – finnw 2010-02-08 21:42:41
@finnw好点。调整到“在同一范围内” – developmentalinsanity 2010-02-08 21:46:59
你的第二句话也是误导。 'main'方法不在'Account1'的任何*实例*中。一个更正确的陈述将是“......私有变量可以通过任何在同一类型中定义的方法(或初始化程序)来访问”。 – 2010-02-08 22:52:27