黑马程序员技术交流社区

标题: 毕老师第6天第八课时求教 [打印本页]

作者: 吕猛    时间: 2011-12-8 22:10
标题: 毕老师第6天第八课时求教
本帖最后由 京泰 于 2011-12-12 15:03 编辑

请问大家这个setName为什么也加载到方法区啊?


作者: 周胜    时间: 2011-12-8 22:48
因为方法区是放方法的地方。。。setName()是一个方法!~
作者: 许邦存    时间: 2011-12-8 23:00
方法区放的是方法的代码,getname也是方法自然也是在方法区了。
作者: zclove898    时间: 2011-12-8 23:33
setName其实就是定义的一个功能,也就是方法。方法必然要放入方法区的。
作者: ◇半度微凉    时间: 2011-12-8 23:48
如果你了解封装这个概念的话就好理解了。首先封装就是将类里面的一些属性私有化,提供共有的方法访问私有的属性,并为每个属性创建一对取值(getter)方法和赋值(setter)方法!就比如上面代码中的name,name被private修饰 说明它已经被私有化了,这样就限制了对属性的访问,这样除了这个类本身,其他外部类都不能直接访问这个类里面的name属性,只能通过这些属性的取值、赋值方法进行这些私有变量的访问,而这里代码中的setName()就是私有属性name的一个赋值方法,只有具备了这个方法外部类才可以调用该属性!所以这里的setName()也是一个方法,是一个特殊的赋值方法而已!既然是也是一个方法,当然就要放到方法区中了!这样明白些了吧 哥们儿?
作者: 应国炎    时间: 2011-12-9 08:35
方法一般都是放方法区的.

方法区里包含有:    静态方法区和非静态方法区  ,不同的是静态方法是在类加载的时候跟着就加载了,而非静态成员方法则是在建立对象的时候加载.
作者: 杨强    时间: 2011-12-9 09:06
setName()是一个方法,所以要放到方法区
作者: 李明    时间: 2011-12-9 09:16
首先setName()是方法,当然要加载到方法区。
作者: 吕猛    时间: 2011-12-9 22:10
许邦存 发表于 2011-12-8 23:00
方法区放的是方法的代码,getname也是方法自然也是在方法区了。

你好,感谢你的帮助,再请问一下。那speak和show不是也应当在方法区吗?
作者: 吕猛    时间: 2011-12-9 22:10
zclove898 发表于 2011-12-8 23:33
setName其实就是定义的一个功能,也就是方法。方法必然要放入方法区的。

你好,感谢你的帮助,再请问一下。那speak和show不是也应当在方法区吗?
作者: 吕猛    时间: 2011-12-9 22:11
◇半度微凉 发表于 2011-12-8 23:48
如果你了解封装这个概念的话就好理解了。首先封装就是将类里面的一些属性私有化,提供共有的方法访问私有的 ...

你好,感谢你的帮助,再请问一下。那speak和show不是也应当在方法区吗?
作者: 吕猛    时间: 2011-12-9 22:12
◇半度微凉 发表于 2011-12-8 23:48
如果你了解封装这个概念的话就好理解了。首先封装就是将类里面的一些属性私有化,提供共有的方法访问私有的 ...

你好,感谢你的帮助,再请问一下。那speak和show不是也应当在方法区吗?
作者: 吕猛    时间: 2011-12-9 22:12
应国炎 发表于 2011-12-9 08:35
方法一般都是放方法区的.

方法区里包含有:    静态方法区和非静态方法区  ,不同的是静态方法是在类加载的 ...

你好,感谢你的帮助,再请问一下。那个steName不是没有static修饰吗?
作者: 王德云    时间: 2011-12-9 22:19
哥 们,你那屏幕怎么捕捉的啊,我捕捉了好几次都看不了效果,全是黑色的!!!下载了工具也是,我用的是完美者解码播放器!
作者: 吕猛    时间: 2011-12-9 22:24
王德云 发表于 2011-12-9 22:19
哥 们,你那屏幕怎么捕捉的啊,我捕捉了好几次都看不了效果,全是黑色的!!!下载了工具也是,我用的是完美者 ...

告诉你个超级好用的工具。QQ+QQ播放器。其实只用QQ播放器也可以,上面有截图功能。但是我还是喜欢暂停的时候用QQ的ctrl+alt+a来截图,习惯了~!
作者: 吕猛    时间: 2011-12-9 22:27
王德云 发表于 2011-12-9 22:19
哥 们,你那屏幕怎么捕捉的啊,我捕捉了好几次都看不了效果,全是黑色的!!!下载了工具也是,我用的是完美者 ...

我一直用QQ播放器,别的播放器不了解。之前用暴风影音来的,广告太多。改用QQ播放器了,没广告。然后上面有个截图功能。不过我一般都是用QQ的ctrl+alt+a来截图,方便,准确!
作者: 赵燕燕    时间: 2011-12-9 23:25
在new一个对象前,首先会加载这个类的.class类文件,加载类文件时,除了非静态成员变量(对象的特有属性)不会被加载,其它的都会被加载。
分别被加载到内存中的不同区域:
静态成员变量(类变量)                ----->方法区的静态部分
静态方法                              ----->方法区的静态部分
非静态方法(包括构造函数)        ----->方法区的非静态部分
作者: 刘孝波    时间: 2011-12-10 09:56
new=character();
首先会加载这个类的.class类文件,加载类文件时,除了非静态成员变量(对象的特有属性)不会被加载,其它的都会被加载。
分别被加载到内存中的不同区域:
静态成员变量(类变量)                ----->方法区的静态部分
静态方法                              ----->方法区的静态部分
非静态方法(包括构造函数)        ----->方法区的非静态部分





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2