已有101人关注
请教几个问题,请给解释一下。
发表在Java图书答疑 2010-01-28
是否精华
版块置顶:
例句:public static void main(String[] args)
1、String[] args 与String args[] 有什么具体区别吗?
2、args只是一个自定义的变量吧,是不是可以改为任何系统允许的名字?
3、void在这里是什么作用?
例句:String s1=new String("hello");
与    String s1="hello";
有什么具体区别?
我自己的理解:第一句是把字符串作为一个对象赋给了变量s1.第二句是把字符串做为一个常量赋给了变量s1;
但这样做在实际中有什么具体意义呢?
分享到:
精彩评论 3
柠檬草
学分:0 LV1
2010-01-30
沙发
第一个问题:
Java的精华这句中体现了一大半!面向对象你理解的越深,这句的精妙之处你就越明白了! 
首先在知道这句定义了一个方法,这个方法的名字叫main,有一个数组参数!这个方法在Java程序中拥有最大的特权! 
public 公共,公有的,说明这个方法是任何对象可以访问的 
static 静态的,说明此方法无论在何处在不生成对象的情况下已可以调用 
void 类型,Java中所有对象,方法,变量,常量,数组都必须有类型 
main 方法名,这个特殊的方法就叫main(死记) 
方法的参数String args[] 
String 类型,前面说了,Java中Java中所有对象,方法,变量,常量,数组都必须有类型 
args[] 数组,为什么要用数组,因为main方法可以接收的参数绝对不止一个,但到底设置几个参数好呢. 
答案就是用一个数组最妥,参数多数组变长,参数少,数组变短! 
args 是数组的名字,只要符合Java变量名规则可以自己变!

第二个问题:
Java运行环境有一个字符串池,由String类维护。执行语句String s1="hello"时,首先查看字符串池中是否存在字符串"hello",如果存在则直接将"hello"赋给s1,如果不存在则先在字符串池中新建一个字符串"hello",然后再将其赋给s。
执行语句String s1=new String("hello")时,不管字符串池中是否存在字符串"hello",直接新建一个字符串"hello"(注意:新建的字符串"hello"不是在字符串池中),然后将其付给s1。
String s1="hello"的效率高,String s1=new String("hello")的效率低,因为新建字符串占用内存空间。
dongmingqi
学分:0 LV1
2010-01-30
板凳
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
第一个问题:
Java的精华这句中体现了一大半!面向对象你理解的越深,这句的精妙之处你就越明白了! 
首先在知道这句定义了一个方法,这个方法的名字叫main,有一个数组参数!这个方法在Java程序中拥有最大的特权! 
public 公共,公有的,说明这个方法是任何对象可以访问的 
static 静态的,说明此方法无论在何处在不生成对象的情况下已可以调用 
void 类型,Java中所有对象,方法,变量,常量,数组都必须有类型 
main 方法名,这个特殊的方法就叫main(死记) 
方法的参数String args[] 
String 类型,前面说了,Java中Java中所有对象,方法,变量,常量,数组都必须有类型 
args[] 数组,为什么要用数组,因为main方法可以接收的参数绝对不止一个,但到底设置几个参数好呢. 
答案就是用一个数组最妥,参数多数组变长,参数少,数组变短! 
args 是数组的名字,只要符合Java变量名规则可以自己变!

第二个问题:
Java运行环境有一个字符串池,由String类维护。执行语句String s1="hello"时,首先查看字符串池中是否存在字符串"hello",如果存在则直接将"hello"赋给s1,如果不存在则先在字符串池中新建一个字符串"hello",然后再将其赋给s。
执行语句String s1=new String("hello")时,不管字符串池中是否存在字符串"hello",直接新建一个字符串"hello"(注意:新建的字符串"hello"不是在字符串池中),然后将其付给s1。
String s1="hello"的效率高,String s1=new String("hello")的效率低,因为新建字符串占用内存空间。

[/FIELDSET]

回复:
比看书明白多了。感谢。
free007
学分:0 LV1
2010-02-01
地板
不用客气
结贴
首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照