public class E06_CompareStrings {
  public static void p(String s, boolean b) {
    System.out.println(s + ": " + b);
  }
  public static void
  compare(String lval, String rval) {
    //! p("lval < rval: " + lval < rval);
    //! p("lval > rval: " + lval > rval);
    //! p("lval <= rval: " + lval <= rval);
    //! p("lval >= rval: " + lval >= rval);
    p("lval == rval", lval == rval);
    p("lval != rval", lval != rval);
    p("lval.equals(rval)", lval.equals(rval));
  }
  public static void main(String[] args) {
    compare("Hello", "Hello");
    String s = new String("Hello");
    compare("Hello", s);
    compare("Hello", "Goodbye");
  }
} ///:~在java中我发现有些创建对象在public static void main(String[] args)(主类)里面,有些却在主类前面创建,这两个位置创建有什么不同?

解决方案 »

  1.   

    main方法是一个static(静态方法) 它只能操作static变量static方法是在该类被加载到内存时就分配了相应的入口地址,从而能通过类名和对象调用执行。
      

  2.   

    1、compare方法是static的,所以能直接在main方法中访问2、在java中我发现有些创建对象在public static void main(String[] args)(主类)里面,有些却在主类前面创建,
    这个是入口方法,不是什么主类。3、这两个位置创建有什么不同
    在main方法前面,在其它方法外面创建的,属于类的成员变量。在main方法中创建的属于该方法的局部变量,主要用于在该方法中调用创建的对象的方法。
      

  3.   

    public static void main(String[] args){}
    这个东西是不是否每写一个程序都必须要的,而且格式也是一成不变?
      

  4.   

    没有main方法就不能执行程序呀