본문 바로가기
728x90
반응형

study/Java305

[Java] 29. 기본 API (toString) package chap11; /* * toString() : 객체의 문자열에 관여하는 메서드 * => 참조변수를 출력하면 자동으로 toString메서드 호출됨. * => 내용 출력을 위해서는 오버라이딩 필요. * => Object 클래스에서는 클래스명@16진수hashCode값 구현됨. */ class ToString { int value; ToString(int value) { this.value = value; } @Override public String toString() { return "ToString [value=" + value + "]"; } } public class ToStringEx1 { public static void main(String[] args) { ToString t1 =.. 2022. 3. 25.
[Java] 29. 기본 API (hashCode) package chap11; /* * hashCode() : 원래의 의미는 객체를 구분하기 위한 참조값 * 내용 비교를 위해서 hashCod 메서드를 오버라이딩함(권장). * 자바에서 논리적 동등성 비교를 위해 equals 메서드와 hashCode 메서드를 이용함. * => equals 메서드 오버라이딩시 hashCode 메서드도 함께 오버라이딩 하도록 권장함. */ public class HashCodeEx1 { public static void main(String[] args) { Equal e1 = new Equal(10); Equal e2 = new Equal(10); System.out.println(e1.hashCode()); System.out.println(e2.hashCode()); S.. 2022. 3. 25.
[Java] 29. 기본 API Exam1 package chap11; class Card { String kind; int number; Card(String kind, int number) { this.kind = kind; this.number = number; } @Override public boolean equals(Object obj) { if(obj instanceof Card) { Card c = (Card) obj; return kind.equals(c.kind) && number == c.number; } else return false; } } public class Exam1 { public static void main(String[] args) { Card c1 = new Card("spade",1); Card c2 =.. 2022. 3. 25.
[Java] 29. 기본 API (Object 클래스) package chap11; /* * Object 클래스 * 1. 모든 클래스의 부모 클래스. * 2. 모든 클래스의 객체에는 Object 클래스의 객체를 포함한다. * 3. 모든 클래스는 Object 클래스의 멤버에 접근할 수 있다. * * equals 메서드 : 동일성 판단 메서드 * Object 클래스에서는 == 연산자와 동일한 기능 구현. * 내용비교(논리적 동등성)를 위해서는 오버라이딩이 필요함. * 참조형 객체인 경우 내용비교를 위해서는 == 연산자 사용하지 말고 equals 메서드로 비교. */ class Equal extends Object{ //(extends Object) 생략되어 있음 int value; Equal(int value) { this.value = value; } //내용.. 2022. 3. 25.
728x90
반응형