Java教程是为JDK 8编写的。本页面描述的示例和实践不利用后续版本中引入的改进,并可能使用不再可用的技术。
请参阅Java语言更改以获取Java SE 9及后续版本中更新的语言特性的摘要。
请参阅JDK发行说明以了解所有JDK版本的新功能、增强功能以及已删除或弃用选项的信息。
以下接口有什么问题?
public interface House { @Deprecated void open(); void openFrontDoor(); void openBackDoor(); }
考虑这个实现了House
接口的类,如问题1所示。
public class MyHouse implements House { public void open() {} public void openFrontDoor() {} public void openBackDoor() {} }
如果编译这个程序,编译器会产生一个警告,因为open
在接口中被弃用。你可以做什么来消除这个警告?
以下代码是否会编译通过?为什么?
public @interface Meal { ... } @Meal("早餐", mainDish="麦片") @Meal("午餐", mainDish="披萨") @Meal("晚餐", mainDish="沙拉") public void evaluateDiet() { ... }
id
、synopsis
、engineer
和date
。将engineer
的默认值设为未指定
,将date
的默认值设为未知
。