자바 공부 중 헷갈리는 개념이 있을 때 나의 해결방법


자바 공부 중 헷갈리는 개념이 있을 때 나의 해결방법

class Person{ long id; public boolean equals(Object obj) { if (obj instanceof Person ) return id ==((Person)obj).id; 공부하다가 문득 참조변수의 형 변환이 헷갈렸다. 그래서 이런 생각이 들었다. " 참조변수의 형변환은 조상 타입으로는 instanceof 연산 시 true로 알고 있는데, 조상 타입으로 형변환하면 자손에 있는 멤버를 못 쓸수도 있지 않나...? " 그래서 내가 헷갈리는 걸 해결하기 위해 다양한 방법을 써봤는데 실제로 그런 상황을 만드는 게 최선이라는 생각이 든다. 결국 프로그래밍의 세계는 백 번 보는 것보다 한 번 쳐보는 게 낫기 때문이라는 정설처럼 떠도는 말을 난 믿고 따르기 때문이다. A클래스를 최고 조상으로, B 클래스를 A의 직계 자손으로 , C 클래스를 B의 직계 자손으로 만들었다. 참조변수 a가 가리키는 객체는 A 타입의 인스턴스이고, b가 가리키는 객체는 B타입의 인...



원문링크 : 자바 공부 중 헷갈리는 개념이 있을 때 나의 해결방법