equals(8)
-
[์ดํํฐ๋ธ ์๋ฐ] Item11. equals๋ฅผ ์ฌ์ ์ํ๋ ค๊ฑฐ๋ hashcode๋ ์ฌ์ ์ํ๋ผ. (hashCode ๊ตฌํ ๋ฐฉ๋ฒ)
item11. equals๋ฅผ ์ฌ์ ์ํ๋ ค๊ฑฐ๋ hashcode๋ ์ฌ์ ์ํ๋ผ. hashCode ์์ฑํ๋ ๋ฐฉ๋ฒ @Override public int hashCode() { int result = Short.hashCode(areaCode); result = 31 * result + Short.hashCode(prefix); result = 31 * result + Short.hashCode(lineNum); return result; } 1๏ธโฃ int ๋ณ์ result๋ฅผ ์ ์ธํ ํ ๊ฐ c๋ก ์ด๊ธฐํํ๋ค. ์ด๋ c๋ ํด๋น ๊ฐ์ฒด์ ์ฒซ๋ฒ์งธ ํต์ฌ ํ๋๋ฅผ ๋จ๊ณ 2๏ธโฃ.a๋ฐฉ์์ผ๋ก ๊ณ์ฐํ ํด์์ฝ๋์ด๋ค. (ํต์ฌํ๋๋ equals ๋น๊ต์ ์ฌ์ฉ๋๋ ํ๋) 2๏ธโฃ ํด๋น ๊ฐ์ฒด์ ๋๋จธ์ง ํต์ฌ ํ๋ f ๊ฐ๊ฐ์ ๋ํด ๋ค์ ์์ ์ ์ํํ๋ค...
2023.01.30 -
[์ดํํฐ๋ธ ์๋ฐ] Item11. equals๋ฅผ ์ฌ์ ์ํ๋ ค๊ฑฐ๋ hashcode๋ ์ฌ์ ์ํ๋ผ. (hashCode ๊ท์ฝ)
item11. equals๋ฅผ ์ฌ์ ์ํ๋ ค๊ฑฐ๋ hashcode๋ ์ฌ์ ์ํ๋ผ. [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (equals ๊ตฌํ ๋ฐฉ๋ฒ๊ณผ ์ฃผ์์ฌํญ) (tistory.com) [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (equals ๊ตฌํ ๋ฐฉ๋ฒ๊ณผ ์ฃผ์์ฌํญ) item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (๋์นญ์ฑ, ๋ฐ์ฌ์ฑ, ์ถ์ด์ฑ) (tistory.com) [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ hyejin.tistory.com equals๋ฅผ ์ฌ์ ์ํ ๋ hashcode๋ ๋ฐ๋์ ์ฌ์ ์ ํด์ผ ํ๋ค๊ณ ์ฃผ์์ฌํญ์ผ๋ก ์์ฑํด๋๋ค..
2023.01.30 -
[์ดํํฐ๋ธ ์๋ฐ] Item10 ์๋ฒฝ๊ณต๋ต. StackOverflowError
item10. equals๋ ๊ธฐ๋ณธ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. " p58. StackoverflowError" [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (์ถ์ด์ฑ, ์ผ๊ด์ฑ, null-์๋) (tistory.com) [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (์ถ์ด์ฑ, ์ผ๊ด์ฑ, null-์๋) item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. equals ๋ฉ์๋๋ฅผ ์ฌ์ ์ํ ๋๋ ๋ฐ๋์ ์ผ๋ฐ ๊ท์ฝ์ ๋ฐ๋ผ์ผ ํ๋ค. [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (๋์นญ์ฑ, ๋ฐ์ฌ์ฑ, ์ถ์ด hyejin.tistory.com ์์ ๊ฒ์๊ธ์์ ์ถ์ด์ฑ ์๋ฐ์ ๋ํ ์์ ๋ก ColorPoint ํด๋์ค์ equals๋ฅผ ์๋ชป..
2023.01.30 -
[์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (equals ๊ตฌํ ๋ฐฉ๋ฒ๊ณผ ์ฃผ์์ฌํญ)
item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (๋์นญ์ฑ, ๋ฐ์ฌ์ฑ, ์ถ์ด์ฑ) (tistory.com) [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (๋์นญ์ฑ, ๋ฐ์ฌ์ฑ, ์ถ์ด์ฑ) item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. equals ๋ฉ์๋๋ฅผ ์ฌ์ ์ํ ๋๋ ๋ฐ๋์ ์ผ๋ฐ ๊ท์ฝ์ ๋ฐ๋ผ์ผ ํ๋ค. equals ๊ท์ฝ 1๏ธโฃ ๋ฐ์ฌ์ฑ reflexivity : null ์ด ์๋ ๋ชจ๋ ์ฐธ์กฐ ๊ฐ x์ ๋ํด x.equals(x) == true hyejin.tistory.com [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (์ถ์ด์ฑ, ์ผ๊ด์ฑ, null-์๋) (ti..
2023.01.26 -
[์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (์ถ์ด์ฑ, ์ผ๊ด์ฑ, null-์๋)
item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. equals ๋ฉ์๋๋ฅผ ์ฌ์ ์ํ ๋๋ ๋ฐ๋์ ์ผ๋ฐ ๊ท์ฝ์ ๋ฐ๋ผ์ผ ํ๋ค. [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (๋์นญ์ฑ, ๋ฐ์ฌ์ฑ, ์ถ์ด์ฑ) (tistory.com) [์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (๋์นญ์ฑ, ๋ฐ์ฌ์ฑ, ์ถ์ด์ฑ) item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. equals ๋ฉ์๋๋ฅผ ์ฌ์ ์ํ ๋๋ ๋ฐ๋์ ์ผ๋ฐ ๊ท์ฝ์ ๋ฐ๋ผ์ผ ํ๋ค. equals ๊ท์ฝ 1๏ธโฃ ๋ฐ์ฌ์ฑ reflexivity : null ์ด ์๋ ๋ชจ๋ ์ฐธ์กฐ ๊ฐ x์ ๋ํด x.equals(x) == true hyejin.tistory.com equals ์ผ๋ฐ ๊ท์ฝ 1๏ธโฃ ๋ฐ์ฌ์ฑ A.equa..
2023.01.26 -
[์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. (๋์นญ์ฑ, ๋ฐ์ฌ์ฑ, ์ถ์ด์ฑ)
item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. equals ๋ฉ์๋๋ฅผ ์ฌ์ ์ํ ๋๋ ๋ฐ๋์ ์ผ๋ฐ ๊ท์ฝ์ ๋ฐ๋ผ์ผ ํ๋ค. equals ๊ท์ฝ 1๏ธโฃ ๋ฐ์ฌ์ฑ reflexivity : null ์ด ์๋ ๋ชจ๋ ์ฐธ์กฐ ๊ฐ x์ ๋ํด x.equals(x) == true ์ด๋ค. ๋จ์ํ ๋งํ๋ฉด ๊ฐ์ฒด๋ ์๊ธฐ ์์ ๊ณผ ๊ฐ์์ผ ํ๋ค๋ ๋ป์ด๋ค. ์ด ์๊ฑด์ ๋๋ถ๋ถ?์ด ์๋๋ผ ์์งํ ๊ฑฐ์ ๋ค ๋ง์กฑํ๋ ์กฐ๊ฑด์ผํ ๋ฐ ๋ง์ฝ ์ด ์๊ฑด์ ์ด๊ธด ํด๋์ค๊ฐ ์๋ค๋ฉด ํด๋์ค์ ์ธ์คํด์ค๋ฅผ ์ปฌ๋ ์ ์ ๋ฃ์ ๋ค์ contains ๋ฉ์๋๋ฅผ ํธ์ถํ๋ฉด ๋ฐฉ๊ธ ๋ฃ์ ์ธ์คํด์ค๊ฐ ์๋ค๊ณ ๋ตํ ๊ฒ์ด๋ค. 2๏ธโฃ ๋์นญ์ฑ symmetry : null ์ด ์๋ ๋ชจ๋ ์ฐธ์กฐ ๊ฐ x, y ์ ๋ํด x.equals(y) ๊ฐ true์ด๋ฉด y.equals(x)๋ true์ด๋ค. x.e..
2023.01.26 -
[์ดํํฐ๋ธ ์๋ฐ] Item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ.
item10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ. equals ๋ฉ์๋๋ ์ฌ์ ์ํ๊ธฐ ์ฌ์๋ ๋ณด์ด์ง๋ง ํจ์ ์ด ๋ง๊ธฐ ๋๋ฌธ์ ์ฌ์ ์ ํ์ง ์๋ ๊ฒ์ด ์ต์ ์ด๊ธฐ๋ ํ๋ค. ์ฌ์ ์ํ์ง ์์ผ๋ฉด ๊ทธ ํด๋์ค์ ์ธ์คํด์ค๋ ์ค์ง ์๊ธฐ ์์ ๊ณผ๋ง ๊ฐ๊ฒ ๋๋ค. equals๋ฅผ ์ฌ์ ์ํ์ง ์์๋ ๋๋ ์ํฉ 1๏ธโฃ ๊ฐ ์ธ์คํด์ค๊ฐ ๋ณธ์ง์ ์ผ๋ก ๊ณ ์ ํ๋ค. : ๊ฐ์ ํํํ๋๊ฒ ์๋๋ผ ๋์ํ๋ ๊ฐ์ฒด๋ฅผ ํํํ๋ ํด๋์ค๊ฐ ์ฌ๊ธฐ์ ํด๋น๋๋ค. Thread๊ฐ ์ฌ๊ธฐ์ ํด๋น๋๋๋ฐ, Object์ equals ๋ฉ์๋๋ ์ด๋ฌํ ํด๋์ค์ ๋ฑ ๋ง๊ฒ ๊ตฌํ๋์๋ค. ๊ทธ๋ฆฌ๊ณ ์ฑ๊ธํค ๊ฐ์ฒด ๋๋ enum ํ์ ์ด๋ฉด equals๋ฅผ ๊ตณ์ด ์ฌ์ ์ ํ์ง ์์๋ ๋๋ค.(ํ์๋ ์์) 2๏ธโฃ ์ธ์คํด์ค์ '๋ ผ๋ฆฌ์ ๋์น์ฑ(logical equality)' ์ ๊ฒ์ฌํ ์ผ์ด ์๋ค. ๋ํ..
2023.01.26 -
[JAVA] 14. Object ํด๋์ค, String ํด๋์ค
1๏ธโฃ Object ํด๋์ค Object ํด๋์ค๋ ๋ชจ๋ ํด๋์ค์ ์ต๊ณ ์กฐ์์ด๊ธฐ ๋๋ฌธ์ Object ํด๋์ค์ ๋ฉค๋ฒ๋ค์ ๋ชจ๋ ํด๋์ค์์ ๋ฐ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ๋ค. protected Object clone() ๊ฐ์ฒด ์์ ์ ๋ณต์ฌ๋ณธ์ ๋ฐํํ๋ค. public boolean equals(Object obj) ๊ฐ์ฒด ์์ ๊ณผ ๊ฐ์ฒด obj๊ฐ ๊ฐ์ ๊ฐ์ฒด์ธ์ง ์๋ ค์ค๋ค. (๊ฐ์ผ๋ฉด true) protected void finalize() ๊ฐ์ฒด๊ฐ ์๋ฉธ๋ ๋ ๊ฐ๋น์ง ์ปฌ๋ ํฐ์ ์ํด ์๋์ ์ผ๋ก ํธ์ถ๋๋ค. ์ด๋ ์ํ๋์ด์ผํ๋ ์ฝ๋๊ฐ ์์ ๋ ์ค๋ฒ๋ผ์ด๋ฉํ๋ค. public Class getClass() ๊ฐ์ฒด ์์ ์ ํด๋์ค ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ Class ์ธ์คํด์ค๋ฅผ ๋ฐํํ๋ค. public int hashCode() ๊ฐ์ฒด ์์ ์ ํด์์ฝ๋๋ฅผ ๋ฐํํ๋ค. pub..
2022.05.03