public class User3 {
int id; //id
String name; //账户名
String pwd; //密码
static String company; //公司名称
static {
System.out.println("执行类的初始化工作");
company = "北京尚学堂";
printCompany();
}
public static void printCompany(){
System.out.println(company);
}
public static void main(String[] args) {
User3 u3 = new User3();
}
}
问题1 我记得前面视频好像说过一个程序里只能有一个public定义的类啊。为什么这个程序里有三个public?难道是类里面可以用public 来修饰方法?
------------------------------------------------------------------------------------------------------
/**
* 测试static关键字的用法
* @author 高淇
*
*/
public class User2 {
int id; // id
String name; // 账户名
String pwd; // 密码
static String company = "北京尚学堂"; // 公司名称
public User2(int id, String name) {
this.id = id;
this.name = name;
}
public void login() {
printCompany();
System.out.println(company);
System.out.println("登录:" + name);
}
public static void printCompany() {
// login();//调用非静态成员,编译就会报错
System.out.println(company);
}
public static void main(String[] args) {
User2 u = new User2(101, "高小七");
User2.printCompany();
User2.company = "北京阿里爷爷";
User2.printCompany();
}
}
问题二 为什么这个User修饰的类定义了一个 u 对象后 是
User2.printCompany();
User2.company = "北京阿里爷爷";
User2.printCompany();
我觉得应该用 u吧,就像这样:(PS:难道是因为静态方法可以直接用类名进行调用?)
u.printCompany();
u.company = "北京阿里爷爷";
u.printCompany();