Programming/Java
[중급] Object 클래스
devpine
2019. 12. 19. 23:11
반응형
Object 클래스
최상위 클래스, 아무것도 상속받지 않으면 자동으로 Object 상속.
오브젝트의 메소드 중 가장 많이 쓰는 메소드 셋. (반드시 오버라이딩)
- equals 객체가 가진 값 비교
- toString 객체가 가진 값 문자열로 변환
- hashCode 객체의 해시코드 값 반환
package com.company;
import java.util.Objects;
public class Student {
String name;
String number;
int birthYear;
//generate
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", number='" + number + '\'' +
", birthYear=" + birthYear +
'}';
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Student student = (Student) o;
return birthYear == student.birthYear &&
Objects.equals(name, student.name) &&
Objects.equals(number, student.number);
}
@Override
public int hashCode() {
return Objects.hash(name, number, birthYear);
}
public static void main(String[] args){
Student s1 = new Student();
s1.name = "김이박";
s1.number = "1111";
s1.birthYear = 1900;
Student s2 = new Student();
s2.name = "김이박";
s2.number = "1111";
s2.birthYear = 1900;
if(s1.equals(s2))System.out.println("s1==s2");
else System.out.println("s1!=s2");
System.out.println(s1.hashCode());
System.out.println(s2.hashCode());
}
}
이 글은 아래 강의를 수강하고 개인적으로 정리한 글입니다.
https://programmers.co.kr/learn/courses/9
자바 중급 | 프로그래머스
평가 5.0 5개의 평가 ★★★★★5 ★★★★0 ★★★0 ★★0 ★0 김세윤 2019.12.11 14:37 하유진 2019.09.16 15:11 김성태 2019.05.28 23:31
programmers.co.kr
반응형