社区
Java SE
帖子详情
关于override的一个问题。
wdman
2005-09-28 12:51:58
class Super {
static Super getInstance() {
return new Super();
}
}
class Sub extends Super {
static Sub getInstance() {
return new Sub();
}
}
上面的代码,在jdk1.5下可以编译通过,但在jdk1.4下
不能编译通过,大家来发表一下看法,谢谢!
...全文
265
25
打赏
收藏
关于override的一个问题。
class Super { static Super getInstance() { return new Super(); } } class Sub extends Super { static Sub getInstance() { return new Sub(); } } 上面的代码,在jdk1.5下可以编译通过,但在jdk1.4下 不能编译通过,大家来发表一下看法,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
25 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
holy_phoenix
2005-10-13
打赏
举报
回复
关于 Java 中覆盖的规则,可以看看:
http://blog.csdn.net/holy_phoenix/archive/2005/10/10/498749.aspx
holy_phoenix
2005-10-05
打赏
举报
回复
1.4 要求返回类型完全一致,所以编译不能通过。
1.5 只要求返回类型一致或者可以替代,所以可以编译通过。
wdman
2005-10-05
打赏
举报
回复
to bineon(雪冬寒) :
"1。4没有测试。理论上应该是能通过编译的。即使去掉了static也能通过编译。这是基本的继承和覆盖吧"
麻烦在1。4下测试一下。
bineon
2005-10-05
打赏
举报
回复
1。5能通过编译。
1。4没有测试。理论上应该是能通过编译的。即使去掉了static也能通过编译。这是基本的继承和覆盖吧、
wdman
2005-10-04
打赏
举报
回复
问题没有真的解决我就不揭帖,所以。。。
skycncomp
2005-10-04
打赏
举报
回复
没用过1.5,不太清楚。
楼主你的信誉值怎么弄的这么高...,我也想学学。^_^
wdman
2005-10-04
打赏
举报
回复
关键是同样的代码,在jdk1.4下编译通不过,在jdk1.5下可以通过。
wdman
2005-10-03
打赏
举报
回复
大家不再谈谈?
superslash
2005-10-03
打赏
举报
回复
xue xi
holy_phoenix
2005-10-03
打赏
举报
回复
纠正一下:
这是Override,Sub 是 Super 的子类型,也就是可以替换Super类型。
如果子类中的同名方法的返回类型不能替代父类中被覆盖的方法,就会在编译时期报错。
holy_phoenix
2005-10-03
打赏
举报
回复
这不是 override,返回类型不一样
yxf
2005-10-03
打赏
举报
回复
to wlmmlw(如何讨好女孩子?) :
谁说的,pascal也是参数要一样返回要一样的,否则就是overload而不是override了。
wdman
2005-10-03
打赏
举报
回复
JDK1.5可以编译通过,请你不妨试一下。
林中漫步1982
2005-10-03
打赏
举报
回复
wangzhisheshou(王之射手) , 正解
这种情况, 不可能是JDK的问题。
别说JDK1.4, 随便哪个JDK版本下都不能通过编译的
wdman
2005-10-03
打赏
举报
回复
to crazycy:
没有违背,都是package private。
crazycy
2005-10-03
打赏
举报
回复
违背了被覆写的方法的访问权限和返回值不能比父类的小这个原则
wdman
2005-09-29
打赏
举报
回复
如果这既不是重载也不是覆盖,这一点算jdk1.5的新特性吗?
违反了OOP的原则吗?
zxbjlu1983
2005-09-29
打赏
举报
回复
sub是Super的派生类,sub的对象也应该是Super的对象。
可能是1.4规定的比较严格吧
所以1.5就修正了
呵呵
只是猜测
wangzhisheshou
2005-09-28
打赏
举报
回复
class Super {
static Super getInstance() {
return new Super();
}
}
class Sub extends Super {
static Sub getInstance() { //应该把返回值sub 改为Super,
//改后为override,不改既不是override也不是overload
return new Sub();
}
}
wlmmlw
2005-09-28
打赏
举报
回复
晕.
override时返回值必须一样.这和Pascal不一样.
Pascal只要是函数名一样就可以了.
---初学者
加载更多回复(5)
Flutter编程指南之Dart语言:移动开发语言
第3章 完成个Dart程序:动动手写
一个
HelloWorld、Dart源代码文件组织结构、Visual Studio Code调试Dart代码、IntelliJ
IDE
A调试Dart代码。 第4章 Dart语法基础:标识符、关键字、变量、常量、注释、库。 第5章 Dart...
机器学习的算法(python).zip
机器学习的算法(python).zip
4K Desert Sand Materials 4K高清沙漠沙材质包Unity游戏素材美术资源unitypackage
4K Desert Sand Materials 4K高清沙漠沙材质包Unity游戏素材美术资源unitypackage 支持Unity版本2019.3.1或更高 沙。它是粗糙的、粗糙的、令人恼火的。它无处不在。我使用伊拉克沙漠沙子的个人照片参考,使用程序材质创作工具来制作这些真实的可平铺 4K 沙漠沙子材料。 该产品比“风格化”材质更真实、更细致,也比基于摄影测量的材质更具绘画性,它包括 5 种独特的沙子材质,旨在模拟细沙、粗沙、岩石沙、沙路和硬质沙子。 每种材质都有四种 4K 纹理,包括环境光遮挡、反照率、金属和法线贴图。高度图和平滑度被打包到金属的绿色和 Alpha 通道中。
机器学习实战代码基于python3实现.zip
众所周知,人工智能是当前最热门的话题之一, 计算机技术与互联网技术的快速发展更是将对人工智能的研究推向
一个
新的高潮。 人工智能是研究模拟和扩展人类智能的理论与方法及其应用的一门新兴技术科学。 作为人工智能核心研究领域之一的机器学习, 其研究动机是为了使计算机系统具有人的学习能力以实现人工智能。 那么, 什么是机器学习呢? 机器学习 (Machine Learning) 是对研究
问题
进行模型假设,利用计算机从训练数据中学习得到模型参数,并最终对数据进行预测和分析的一门学科。 机器学习的用途 机器学习是一种通用的数据处理技术,其包含了大量的学习算法。不同的学习算法在不同的行业及应用中能够表现出不同的性能和优势。目前,机器学习已成功地应用于下列领域: 互联网领域----语音识别、搜索引擎、语言翻译、垃圾邮件过滤、自然语言处理等 生物领域----基因序列分析、DNA 序列预测、蛋白质结构预测等 自动化领域----人脸识别、无人驾驶技术、图像处理、信号处理等 金融领域----证券市场分析、信用卡欺诈检测等 医学领域----疾病鉴别/诊断、流行病爆发预测等 刑侦领域----潜在犯罪识别与预测、模拟人工智能侦探等 新闻领域----新闻推荐系统等 游戏领域----游戏战略规划等 从上述所列举的应用可知,机器学习正在成为各行各业都会经常使用到的分析工具,尤其是在各领域数据量爆炸的今天,各行业都希望通过数据处理与分析手段,得到数据中有价值的信息,以便明确客户的需求和指引企业的发展。
南京理工大学机器学习与人工智能选修课程大作业备份.zip
众所周知,人工智能是当前最热门的话题之一, 计算机技术与互联网技术的快速发展更是将对人工智能的研究推向
一个
新的高潮。 人工智能是研究模拟和扩展人类智能的理论与方法及其应用的一门新兴技术科学。 作为人工智能核心研究领域之一的机器学习, 其研究动机是为了使计算机系统具有人的学习能力以实现人工智能。 那么, 什么是机器学习呢? 机器学习 (Machine Learning) 是对研究
问题
进行模型假设,利用计算机从训练数据中学习得到模型参数,并最终对数据进行预测和分析的一门学科。 机器学习的用途 机器学习是一种通用的数据处理技术,其包含了大量的学习算法。不同的学习算法在不同的行业及应用中能够表现出不同的性能和优势。目前,机器学习已成功地应用于下列领域: 互联网领域----语音识别、搜索引擎、语言翻译、垃圾邮件过滤、自然语言处理等 生物领域----基因序列分析、DNA 序列预测、蛋白质结构预测等 自动化领域----人脸识别、无人驾驶技术、图像处理、信号处理等 金融领域----证券市场分析、信用卡欺诈检测等 医学领域----疾病鉴别/诊断、流行病爆发预测等 刑侦领域----潜在犯罪识别与预测、模拟人工智能侦探等 新闻领域----新闻推荐系统等 游戏领域----游戏战略规划等 从上述所列举的应用可知,机器学习正在成为各行各业都会经常使用到的分析工具,尤其是在各领域数据量爆炸的今天,各行业都希望通过数据处理与分析手段,得到数据中有价值的信息,以便明确客户的需求和指引企业的发展。
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章