静态变量和非静态变量

来源:互联网 发布:最新中英文翻译软件 编辑:程序博客网 时间:2024/05/16 07:57

class string1
{
String s1="pingguo";
String s2="xiangjiao";
String s3=new String("lizi");
String s4=new String("li");
public static void main(String args[])
{
System.out.println("s1==s2");
System.out.println(s1==s3);//b
System.out.println(s3==s4);//a
}
}
a和b编译报错,can not make a static referrence to no_static filed s3,s4;、

分析:

String s1="pingguo";
String s2="xiangjiao";
String s3=new String("lizi");
String s4=new String("li");

所产生的是3个非静态变量,静态的成员变量可以不创建对象直接在本部类中使用,而不是静态则要创建对象。

方法一

class string1

{
String s1="pingguo";
String s2="xiangjiao";
String s3=new String("lizi");
String s4=new String("li");
public static void main(String args[])
{
string1 a=new string1();
System.out.println("s1==s2");
System.out.println(a.s1==a.s3);
System.out.println(a.s3==a.s4);
}

}

方法二

//class string1
//{
//static String s1="pingguo";
//static String s2="xiangjiao";
//static String s3=new String("lizi");
//static String s4=new String("li");
//public static void main(String args[])
//{
//System.out.println(s1.equals(s2));
//System.out.println(s1.equals(s3));//b
//System.out.println(s3.equals(s4));//a
//}
//}
0 0
原创粉丝点击