Java教程是针对JDK 8编写的。本页面中描述的示例和实践不利用后续版本中引入的改进,可能使用不再可用的技术。
有关Java SE 9及后续版本中更新的语言特性的摘要,请参阅Java语言变更。
有关所有JDK版本的新功能、增强功能和已删除或已弃用选项的信息,请参阅JDK发行说明。
问题1:考虑以下两个类:
public class ClassA { public void methodOne(int i) { } public void methodTwo(int i) { } public static void methodThree(int i) { } public static void methodFour(int i) { } } public class ClassB extends ClassA { public static void methodOne(int i) { } public void methodTwo(int i) { } public void methodThree(int i) { } public static void methodFour(int i) { } }
问题1a:哪个方法覆盖了超类中的方法?
答案1a: methodTwo
问题1b:哪个方法隐藏了超类中的方法?
答案1b: methodFour
问题1c:其他方法有什么作用?
答案1c:它们会导致编译时错误。
问题2:考虑你在之前的练习中编写的Card
、Deck
和DisplayDeck
类。这些类应该重写哪些Object
方法?
答案2: Card
和Deck
应该重写equals
、hashCode
和toString
。
练习1:编写你在问题2中回答的方法的实现。
答案1:请参阅 Card2
。