Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 Re:为什么类中定义的属性直接赋值与在方法中赋值会有不同 [Re:jimmyofth]
JiafanZhou



版主


发贴: 736
积分: 61
于 2008-09-25 16:37 user profilesend a private message to usersend email to JiafanZhousearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
> 为什么直接在main方法里取i,s的值,与在get方法里取值是不同的?
> 一个取自父类,一个取自子类
Correct, this special rules applies to non-static fields declared in the class.
i.e.
- Fields that have the same as as any super-classes/interfaces will be overridden in the current derived class, and being used in the methods of the derived class.
- Fields does not have the dynamic binding attributes, in other words, they are not polymorphic, any methods are polymorphic.
- As a general rule, fields have the same as as super classes/interfaces should be avoided as not to cause confusion.
- Your example clearly shows this feature.

> 类的属性是存储在栈里还是堆里?
depends if it is a primitive or a Java Object type.
- for a primitive type, it will be stored in the stack.
- for a Java Object type, it will be stored in the heap.
- there are some violation to this general rule, depending on how JRE is implemented by Sun, for example, String has some special Literal Pool that does not strictly follow this rule in order to enhance the performance.

Regards,
Jiafan



When I was a kid I used to pray every night for a new bike. Then I realized that The Lord doesn't work that way, so I stole one and asked him to forgive me.

话题树型展开
人气 标题 作者 字数 发贴时间
8375 为什么类中定义的属性直接赋值与在方法中赋值会有不同 jimmyofth 1367 2008-09-23 10:11
6663 Re:为什么类中定义的属性直接赋值与在方法中赋值会有不同 JiafanZhou 1027 2008-09-25 16:37

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923