본문 바로가기
Programming/Java

[중급] Object 클래스

by devpine 2019. 12. 19.
반응형

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

 

반응형

'Programming > Java' 카테고리의 다른 글

[기초] 예외 처리  (0) 2019.12.19
[기초] 내부 클래스, 익명 클래스  (0) 2019.12.19
[기초] String 클래스  (0) 2019.12.19
Java 개발 환경 Intellij 설치  (0) 2019.12.19
[Spring] DAO, DTO, Service란  (0) 2019.04.17

댓글