//Student.javaअधिभावी यह
class Student{
private int roll;
private String name;
public Student(int roll,String name){
this.roll=roll;
this.name=name;
}
public int hashCode(){
return roll+name.length();
}
public boolean equals(Object obj){
Student s=(Student)obj;
return (this.roll==s.roll && this.name.equals(s.name));
}
}
//IssueID.java
class IssueID{
public static void issueID(Student s1,Student s2){
if(s1.equals(s2))
System.out.println("New ID issued");
else
System.out.println("New ID NOT issued");
}
}
//Institute.java
import java.lang.Object;
class Institute{
public static void main(String[] args){
Student s1=new Student(38,"shiva");
Student s2=new Student(45,"aditya");
IssueID.issueID(s1,s2);
System.out.println(s1.hashCode());
System.out.println(s2.hashCode());
}
}
के बाद मूल hashCode() विधि का उपयोग कैसे करें जैसा कि उपर्युक्त कोड में है, मैंने hashCode()
विधि को ओवरराइड कर दिया है। यह मूर्खतापूर्ण लग सकता है, लेकिन क्या मैं एक ही समय में एक ही छात्र वस्तुओं (एस 1 और एस 2) का उपयोग कर java.lang.Object.hashCode()
विधि तक पहुंच सकता हूं?
'super.hashCode()' का उपयोग करना चाहते हैं, लेकिन वह किसी काम का नहीं होगा IMHO। –