单项选择题
程序员正在进行一个项目,必须实现equals方法与所给的hashCode方法协调运行:()
public int hashCode() {
return (size.hashCode() + color.hashCode()) * 17;
}
哪一个equals方法支持此目标?()
A. 无法确定
B. public boolean equals(Object o) { Sock s = (Sock) o;return size.equals(s.size); }
C. public boolean equals(Object o) { Sock s = (Sock) o;return color.equals(s.color); }
D. public boolean equals(Object o) { Sock s = (Sock) o;return size.equals(s.size) &&color.equals(s.color); }
点击查看答案&解析
相关考题
-
单项选择题
1. class Alpha { void m1() {} } 2. class Beta extends Alpha { void m2() { } } 3. class Gamma extends Beta { } 4. 5. class GreekTest { 6. public static void main(String [] args) { 7. a Alpha [] a = {new Alpha(), new Beta(), new Gamma() }; 8. for(Alpha a2 : a) { 9. a2.m1(); 10. if (a2 instanceof Beta || a2 instanceof Gamma) 11. //insert code here 12. } 13. } 14. } 哪一行代码插入到第11行,将编译但是会在运行时产生异常?()
A. a2.m2();
B. ((Beta)a2).m2();
C. ((Alpha)a2).m2();
D. ((Gamma)a2).m2(); -
单项选择题
程序: class MyDate{ private int year; private int month; private int day; public MyDate( int year, int month,int day){ this.year=year; this.month=month; this.day=day; } //Override Method } 为了让new MyDate(1980,11,9)==(判断是否相等)new MyDate(1980,11,9) 返 回true,必须在Override Method处覆盖哪个方法?()
A. hashCode
B. equals
C. toString
D. notify -
单项选择题
class TestReference{ public static void main(String[] args){ int x=2; TestReference tr = new TestReference(); System.out.print(x); tr.change(x); System.out.print(x); } public void change(int num){ num = num + 1; } } 程序运行后的输出是哪项()?
A. 23
B. 21
C. 22
D. 编译错误
