新人也在这里发帖
----------------解决方案--------------------------------------------------------
扫尾少一下。
第五个问题,,,我看完你的回答 理解是 程序从右往左执行,那new myfirstapp()是不是 就是新建一个 那那个 myfirstapp 这个名字能不能换其他任意。 而myfirstapp huige 那个myfirstapp 是原来上面定义的的那个类的名字。是这样理解吗?
----------------解决方案--------------------------------------------------------
myfirstapp huige = new myfirstapp ();
myfirstapp 是类型,huige 是定义的对象 new myfirstapp ()实例化这个对象
String str = new String();
就是定义一个string类型的对象str ,并且实例化对象,这样 str就可以用了
----------------解决方案--------------------------------------------------------
----------------解决方案--------------------------------------------------------
恩,要实例化才可以用。
这里的实例化分两步,首先是等于号前面的定义对象分配空间,和后面的实例化,这个在jvm中是不分先后的,所以如果你以后的编程涉及多线程要注意。一般都是多线程都是采用单例模式,或者用同步关键字,这里的同步关键字最好加在对象上,不要放在方法上,影响性能,以后慢慢看吧。
关于实例化,你可以写一些小例子玩玩,不实例化会怎么样,多实践一下,找找错。一般在程序中,如果没有特殊要求,都是先定义,等用得到的时候在实例化,这样可以提高性能,不浪费内存,就像这样String str = null;然后再用到的地方在写 str = new String();这里的括号可以加长度。这里只是举例子,String是不可变长的,怒如果用这样类型要注意躲考虑,可以自己看看Strng ,StringBuffer ,StringBuider的区别和用法。
----------------解决方案--------------------------------------------------------
首先是等于号前面的定义对象分配空间,
刚上面这句话说错了,不好意思,这里只是定义对象,还没有分配空间
----------------解决方案--------------------------------------------------------
----------------解决方案--------------------------------------------------------
回复 2楼 cc44544
谢谢 你回答这么多啊 辛苦了 扫尾少一下。
第五个问题,,,我看完你的回答 理解是 程序从右往左执行,那new myfirstapp()是不是 就是新建一个 那那个 myfirstapp 这个名字能不能换其他任意。 而myfirstapp huige 那个myfirstapp 是原来上面定义的的那个类的名字。是这样理解吗?
----------------解决方案--------------------------------------------------------
myfirstapp huige = new myfirstapp ();
myfirstapp 是类型,huige 是定义的对象 new myfirstapp ()实例化这个对象
String str = new String();
就是定义一个string类型的对象str ,并且实例化对象,这样 str就可以用了
----------------解决方案--------------------------------------------------------
回复 5楼 java小蚂蚁
那是不是这样说 huige 是要新定义的对象 他的依据是原来设计的myfirstapp 那后面那个myfirstapp huige = new myfirstapp() 整个语句就是实例化的语句。。变实例化才能用 ----------------解决方案--------------------------------------------------------
恩,要实例化才可以用。
这里的实例化分两步,首先是等于号前面的定义对象分配空间,和后面的实例化,这个在jvm中是不分先后的,所以如果你以后的编程涉及多线程要注意。一般都是多线程都是采用单例模式,或者用同步关键字,这里的同步关键字最好加在对象上,不要放在方法上,影响性能,以后慢慢看吧。
关于实例化,你可以写一些小例子玩玩,不实例化会怎么样,多实践一下,找找错。一般在程序中,如果没有特殊要求,都是先定义,等用得到的时候在实例化,这样可以提高性能,不浪费内存,就像这样String str = null;然后再用到的地方在写 str = new String();这里的括号可以加长度。这里只是举例子,String是不可变长的,怒如果用这样类型要注意躲考虑,可以自己看看Strng ,StringBuffer ,StringBuider的区别和用法。
----------------解决方案--------------------------------------------------------
首先是等于号前面的定义对象分配空间,
刚上面这句话说错了,不好意思,这里只是定义对象,还没有分配空间
----------------解决方案--------------------------------------------------------