12
返回列表 发新帖
楼主: muchu123

a结果是多少到底?

[复制链接]
论坛徽章:
0
11#
 楼主| 发表于 2008-9-1 19:05 | 只看该作者
墮胎

嘎嘎嘎。。。。。。

使用道具 举报

回复
论坛徽章:
0
12#
 楼主| 发表于 2008-9-1 19:05 | 只看该作者
你的墮胎是不是怀孕了哪个啊还是其他意思哦?

使用道具 举报

回复
论坛徽章:
131
乌索普
日期:2017-09-26 13:06:30马上加薪
日期:2014-11-22 01:34:242014年世界杯参赛球队: 尼日利亚
日期:2014-06-17 15:23:23马上有对象
日期:2014-05-11 19:35:172014年新春福章
日期:2014-04-04 16:16:58马上有对象
日期:2014-03-08 16:50:54马上加薪
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14
13#
发表于 2008-9-1 21:57 | 只看该作者
多态, 一点幽默感都没有

使用道具 举报

回复
论坛徽章:
927
世界杯纪念徽章
日期:2014-07-14 11:31:462014年世界杯参赛球队: 智利
日期:2014-07-04 23:38:162014年世界杯参赛球队: 尼日利亚
日期:2014-07-04 23:38:162014年世界杯参赛球队:墨西哥
日期:2014-07-03 23:45:472014年世界杯参赛球队: 希腊
日期:2014-07-03 23:45:472014年世界杯参赛球队: 荷兰
日期:2014-07-03 23:45:472014年世界杯参赛球队: 阿尔及利亚
日期:2014-07-02 00:13:542014年世界杯参赛球队: 乌拉圭
日期:2014-07-02 00:12:112014年世界杯参赛球队: 哥斯达黎加
日期:2014-07-02 00:12:102014年世界杯参赛球队:巴西
日期:2014-07-01 23:38:18
14#
发表于 2008-9-1 22:46 | 只看该作者
原帖由 justforregister 于 2008-9-1 21:57 发表
多态, 一点幽默感都没有

使用道具 举报

回复
论坛徽章:
3
授权会员
日期:2008-08-15 09:23:52数据库板块每日发贴之星
日期:2008-08-16 01:02:18数据库板块每日发贴之星
日期:2008-10-01 01:03:06
15#
发表于 2008-9-2 23:34 | 只看该作者
哈哈,封装多态继承

使用道具 举报

回复
论坛徽章:
3
授权会员
日期:2008-08-15 09:23:52数据库板块每日发贴之星
日期:2008-08-16 01:02:18数据库板块每日发贴之星
日期:2008-10-01 01:03:06
16#
发表于 2008-9-2 23:34 | 只看该作者
很久没搞堕胎了

使用道具 举报

回复
论坛徽章:
102
现任管理团队成员
日期:2011-05-07 01:45:08ITPUB十周年纪念徽章
日期:2012-11-26 16:33:25慢羊羊
日期:2015-03-04 14:19:442015年新春福章
日期:2015-03-06 11:57:312016猴年福章
日期:2016-02-23 09:58:34
17#
发表于 2008-9-3 20:09 | 只看该作者

非常明了
臧圩人的二文章举的例子可能更全面
http://zangweiren.javaeye.com/blog/214369
http://zangweiren.javaeye.com/blog/221944

原帖由 zjrstar 于 2008-9-1 16:51 发表
楼主需要弄清楚两个概念:
1.重写(override)
2.隐藏(hidening)
而且还需要分清楚引用变量类型和对象实例类型。
对于SuperClass和SubClass的成员变量i来说属于属性隐藏,不是函数重写。所以不属于多态。
对于A类和B类也是,成员变量K是属性隐藏。
对于SuperClass和SubClass的成员函数test它符合函数重写的规则,所以它是多态,运行时识别,记住编译期间不管。
对于A和B的成员函数getNumber,display也是函数重写,也符合多态。

好了,认识完重写和隐藏后需要知道引用变量类型和对象实例类型。
引用变量类型就是SuperClass temp = new SubClass();A a = new B();中=号前面的那个变量。对象实例就是=后面创建的那个对象实例。

对于隐藏,它是跟随引用变量类型的类型取值,
对于重写,它是跟随对象实例的实际类型来调用的。

所以最终结果就是符合你写的那个结果,这就是JAVA的规则。

使用道具 举报

回复
论坛徽章:
0
18#
 楼主| 发表于 2008-9-4 14:20 | 只看该作者
对于隐藏,它是跟随引用变量类型的类型取值。

隐藏变量子类和父类的变量名字必须一样么?

使用道具 举报

回复
论坛徽章:
0
19#
发表于 2008-9-7 17:28 | 只看该作者
原帖由 muchu123 于 2008-9-1 11:24 发表
class SuperClass{
int a;
public SuperClass(){a=12;}
void test(){System.out.println("this is the super!");}
}

class SubClass extends SuperClass{
int a;
public SubClass(){a=13;}
void test(){System.out.println("This is the subclass");}
}

class Test{
public static void main(String args[]){
SuperClass temp = new SubClass();
System.out.println(temp.a);}
}

a结果是多少到底?


为什么结果是12呢?

使用道具 举报

回复
论坛徽章:
0
20#
发表于 2008-9-7 17:30 | 只看该作者
原帖由 zjrstar 于 2008-9-1 16:51 发表
楼主需要弄清楚两个概念:
1.重写(override)
2.隐藏(hidening)
而且还需要分清楚引用变量类型和对象实例类型。
对于SuperClass和SubClass的成员变量i来说属于属性隐藏,不是函数重写。所以不属于多态。
对于A类和B类也是,成员变量K是属性隐藏。
对于SuperClass和SubClass的成员函数test它符合函数重写的规则,所以它是多态,运行时识别,记住编译期间不管。
对于A和B的成员函数getNumber,display也是函数重写,也符合多态。

好了,认识完重写和隐藏后需要知道引用变量类型和对象实例类型。
引用变量类型就是SuperClass temp = new SubClass();A a = new B();中=号前面的那个变量。对象实例就是=后面创建的那个对象实例。

对于隐藏,它是跟随引用变量类型的类型取值,
对于重写,它是跟随对象实例的实际类型来调用的。

所以最终结果就是符合你写的那个结果,这就是JAVA的规则。

什么叫属性隐藏呢?请教了!

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表