Java编程时提示使用或覆盖了已过时的API,是什么原因
这种情况不止java有,其他编程语言也有,理由都差不多。
java从1995年出生,到现在已经发展到version 10了,期间也在不停的升级迭代。每个版本之间,提供给开发者的API,其实是在不停变化的,有添加的,有删除的,也有修改的。
为了不至于让变化来的太突兀,这些编程语言的提供者通常会给开发者一个缓冲期,选择保留祖传代码,同时提供新的API接口,在缓冲期内,新旧接口可以并存,都能在现有的版本中受到支持,这样既方便旧代码的维护,又方便了新接口的普及。但是为了促使开发者使用新的接口,就会给一个这样的警告,吓唬你赶快升级以适应新的版本变更。
其实这个缓冲期往往是永久的,大多数编程语言一直会保留到死,并不会真正的废弃。但开发语言的提供者理论上保留了完全删除旧有接口的权利,到时候你的旧代码在新版本中就跑不动了。
一般有经验的老程序员,会选择无视警告,因为他们的眼中只有错误,不关心警告。
但其实正确的做法是升级旧的代码,使用新的接口。既然旧的接口已经被废弃,说明多多少少都是有点问题的,可能是出于性能考虑,也可能是出于安全考虑,反正不建议你继续使用,最好还是不要再使用了。
如果忽略这个警告,终于有一天你的代码也会变成祖传代码。
没什么原因,就是你使用的API已经过时了,可以使用,但是官方不建议使用,后面新开发的技术也不会为这个API提供优化等。一般这种情况下都会有新的API可以替代的,详情您应该去参考帮助文档,而不是一开始就问别人。