반응형

해시코드

    모든 객체의 공통 메서드 - 규칙 9 equals를 재정의할 때는 반드시 hashCode도 재정의하라

    일반적으로 equals 메서드만 재 정의하고 hashCode를 재정의 하지 않아, Object.hashCode의 일반 규약을 어기게 되므로, HashMap, HashSet, Hashtable 같은 해시 기반 컬렉션과 함께 사용하면 오동작하게 된다. 실제 프로젝트에서 Equals와 hashCode를 재정의 하지 않아서 문제가 된 적이 있다. http://blog.naver.com/rokking1/220920301116 ※ hashCode 선언의 규약 - 응용프로그램 실행 중에 같은 객체의 hashCode를 여러 번 호출하는 경우, equals가 사용하는 정보들이 변경되지 않았다면, 언제나 동일한 정수가 반환 되어야 한다. - equals(object) 메서드가 같다고 판단한 두 객체의 hashCode 값은..

    HashMap에서 사용되는 인스턴스 객체의 equals()와 hashCode() 재 정의 중요성

    HashMap에 저장되어 있는 키 값을 통해 저장된 value 값을 찾을 때, 입력된 object와 동일한 hashCode 값을 가지고 있는키를 찾기 위해 객체에 정의된 equals 메소드를 사용한다. 두 개의 object를 재 정의한 equals를 통해 비교한 후 동일한 객체 일 경우 동일한 hashCode값을 반환한다. 그렇기에 instance 객체를 hashMap에 key값으로 사용하고 싶은 경우에는 비교에 사용되는 equals()와 동일한 객체에 대한 동일한 hashCode 값을 반환하는 hashCode() 메소드를 Override 해야한다. 참고자료 https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.K..

    비트코인 핵심기술 블록체인 핵심 요약

    다들 비트코인붐이 오기 시작하면서 돈을 잃은 사람도 있고, 돈을 얻었다는 사람도 있다. 나는 그 노선에 같이 달리지는 않았지만, 새로운 기술과 트렌드에 뒤쳐지는 느낌이 들어서 늦게나마 공부를 해보고 싶었다. 그 중에서 비트코인의 핵심 기술이라고 불리는 블록체인이 무엇인지 조사해보았다. (인터넷에 있는 자료를 바탕으로 정리한 내용이다. 출처는 문서 하단에 기재하였다.) 제 3자 인증에서 개인과 개인간의 인증 시스템(P2P)기존의 화폐거래를 하기위해서는 은행이라는 제 3기관의 인증을 통해 진행되었다. 예를 들어 설명해보자. 만약 위들이라는 사람이 다니라는 사람에게 10만원을 전송하고자 할 때, 위들은 은행에 내 계좌에서 10만원을 다니에게 전송하라고 요청할 것이다. 그럼 은행은 다니에게 10만원을 전송할 것..

반응형