日期:2014-05-20  浏览次数:20576 次

创建对象的问题?
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)(主类)里面,有些却在主类前面创建,这两个位置创建有什么不同?

------解决方案--------------------
up!
------解决方案--------------------
main方法是一个static(静态方法) 它只能操作static变量

static方法是在该类被加载到内存时就分配了相应的入口地址,从而能通过类名和对象调用执行。
------解决方案--------------------
1、compare方法是static的,所以能直接在main方法中访问

2、在java中我发现有些创建对象在public static void main(String[] args)(主类)里面,有些却在主类前面创建,
这个是入口方法,不是什么主类。

3、这两个位置创建有什么不同
在main方法前面,在其它方法外面创建的,属于类的成员变量。在main方法中创建的属于该方法的局部变量,主要用于在该方法中调用创建的对象的方法。
------解决方案--------------------
这东西看了就头疼!
------解决方案--------------------
没有main方法就不能执行程序呀