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
//}
//}