class PassParam
{
int x;
public static void main(String args[])
{
/*
int x=5;
change(x);
System.out.println(x);
*/
PassParam obj = new PassParam();
obj.x=5;
change(obj);
System.out.println(obj.x);
int[] x = new int[1];
x[0]=5;
change(x);
System.out.println(x[0]);
}
/*
public static void change(int x)
{
x=3;
}
*/
public static void change(PassParam obj)
{
obj.x=3;
}
public static void change(int[] x)
{
x[0]=3;
}
}
/*
静态方法只能访问同一个类中的静态成员或变量,因为非静态的成员或者
变量只有在对象被创建时才能够被使用
静态代码块的执行顺序。
单态设计模式的运用,像STRUTS ,SPRING,JUNIT等配置文件的加载等可以灵活运用
*/
class Chinese
{
static Chinese objRef = new Chinese();
private static int count = 0;
private static String country = "中国";
public static Chinese getInstance()
{
return objRef;
}
static
{
count = 2;
System.out.println("static code");
}
private Chinese()
{
System.out.println(++count);
}
static void sing()
{
System.out.println("啊");
}
void singOurCountry()
{
System.out.println(country);
sing();
}
public static void main(String args[])
{/*
Chinese.sing();
new Chinese().sing();
new Chinese().singOurCountry();
*/
Chinese obj1 = Chinese.getInstance();
Chinese obj2 = Chinese.getInstance();
System.out.println(obj1==obj2);
}
}