목록이것이 자바다/12 java.base 모듈 (4)
충분히 쌓여가는
객체 해시코드 객체를 식별하는 정수 Object의 hashCode() 메소드 객체의 메모리 번지를 이용해서 해시코드를 생성하기 때문에 객체마다 다른 정수값을 return 한다 두 객체가 동등한지를 비교할 때 주로 사용 public int hashCode() hashCode() 메소드 역시 객체의 데이터를 기분으로 재정의해서 새로운 정수값을 return하도록 하는 것이 일반적이다 객체가 다르다 할지라도 내부 데이터가 동일하다면 같은 정수값을 return하기 위해서이다 자바는 두 객체가 동등함을 비교할 때 hashCode()와 equals() 메소드를 같이 사용하는 경우가 많다 1) hashCode()가 return하는 정수값이 같은지 확인 2) equals() 메소드가 true를 return 하는지를 확인..
Object의 equals() 메소드는 객체의 번지를 비교하고 boolean 값을 return 한다 public boolean equals(Obejct obj) equals() 메소드의 매개변수 타입이 Object이므로 자동 타입 변환에 의해 모든 객체가 매개값으로 대입될 수 있다 equals() 메소드는 비교 연산자인 ==과 동일한 결과를 return 한다 Object obj1 = new Object(); Object obj2 = obj1; boolean result = obj1.equals(obj2); boolean result = (obj1 == obj2) 일반적으로 Object의 equals() 메소드는 재정의해서 동등 비교용으로 사용된다(동등 비교: 객체가 비록 달라도 내부의 데이터가 같은지 비..
클래스를 선언할 때 extends 키워드로 다른 클래스를 상속하지 않으면 암시적으로 java.lang.Object 클래스를 상속하게 된다 즉, 자바의 모든 클래스는 Object의 자식이거나 자손 클래스이다 그렇게 때문에 Object가 가진 메소드는 모든 객체에서 사용할 수 있다 boolean equals(Object obj) 객체의 번지를 비교하고 결과를 리턴 int hashCode() 객체의 해시코드를 리턴 String toString() 객체 문자 정보를 리턴
java.base는 모든 모듈이 의존하는 기본 모듈로, 모듈 중 유일하게 requires하지 않아도 사용할 수 있다 java.lang 자바 언어의 기본 클래스를 제공 java.util 자료 구조와 관련된 컬렉션 클래스를 제공 java.text 날짜 및 숫자를 원하는 형태의 문자열로 만들어 주는 포맷 클래스를 제공 java.time 날짜 및 시간을 조작하거나 연산하는 클래스를 제공 java.io 입출력 스트림 클래스를 제공 java.net 네트워크 통신과 관련된 클래스를 제공 java.nio 데이터 저장을 위한 Buffer 및 새로운 입출력 클래스 제공 java.lang 자바 언어의 기본적인 클래스를 담고 있는 패키지 이 패키지에 있는 클래스와 인터페이스는 import 없이 사용할 수 있다 String, ..