문제
쪽집게 과외
예외, 에러 종류 (Error, Exception, RuntimeException)
jscode.notion.site
풀이
package Class6.Example6_1;
public class Example6_1 {
public static void main(String[] args) {
Money money1 = new Money(500);
Money money2 = new Money(500);
System.out.println(money1 == money2);
System.out.println(money1.equals(money2));
}
}
package Class6.Example6_1;
import java.util.Objects;
public class Money {
private int value;
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
Money money = (Money) o;
return value == money.value;
}
@Override
public int hashCode() {
return Objects.hash(value);
}
public Money(int value) {
this.value = value;
}
}
참고
- Call by Reference, Call by Value
Call by Reference, Call by Value 와 기본 타입, 참조타입 이라는 키워드로 검색해보자.
그리고 정리해놓자. 이 개념은 쉽지 않은 개념이다. 하지만 꼭 짚고 넘어가야 하는 개념이다.
- https://velog.io/@ahnick/Java-Call-by-Value-Call-by-Reference
- https://re-build.tistory.com/3
- https://chinggin.tistory.com/63
- https://chobo24.tistory.com/entry/JAVA자바-기본타입과-참조타입-그리고-연산
- equals(), hashCode()
https://mangkyu.tistory.com/101
https://tecoble.techcourse.co.kr/post/2020-07-29-equals-and-hashCode
https://onsil-thegreenhouse.github.io/programming/java/2017/11/19/java_IDE_make_equals_hashcode/
'Java > JSCODE - Java' 카테고리의 다른 글
7회차 - 미션 (1) | 2023.03.06 |
---|---|
6회차 - 미션 (1) | 2023.03.06 |
4회차 - 미션 (1) | 2023.02.23 |
4회차 - 연습문제 (3) (1) | 2023.02.23 |
4회차 - 연습문제 (2) (1) | 2023.02.23 |