/*错误的代码*/
/*class Person
{
private String name;
private int age;
Person(String name,int age)
{
this.name=name;
this.age=age;
}
public static void show()
{
System.out.println("name="+name+",age="+age);
}
}
class PersonDemo
{
public static void main(String[] args)
{
Person.show();//注意,对于静态方法是可以运用类名调用的。
//所以没有通过Person p=new Person("lisi",10);语句
//建立对象的方法来调用show();所以内存中没有此成员变量,所以会编译失败
}
}
*/
/*下面给你写的是正确的方法*/
/*正确程序*/
class Person
{
private static String name;//静态成员随着类的加载而加载,所以这样写的话也是正确的
private static int age;
Person(String name,int age)
{
this.name=name;
this.age=age;
}
public static void show()
{
System.out.println("name="+name+",age="+age);
}
}
class PersonDemo
{
public static void main(String[] args)
{
Person.show();//注意,对于静态方法是可以运用类名调用的。
//或者用Person p=new Person("lisi",10);
//p.show();来执行此时,对象中的成员的值才可以真正的被访问到、
}
}
|