๐ป
Java ํ๋ก๊ทธ๋๋ฐ - [๊ธฐ๋ณธ API ํด๋์ค] Object ํด๋์ค(equals(), toString()) ๋ณธ๋ฌธ
Java ํ๋ก๊ทธ๋๋ฐ - [๊ธฐ๋ณธ API ํด๋์ค] Object ํด๋์ค(equals(), toString())
๋ํจ๋ 2020. 5. 12. 14:40[์ฐธ๊ณ ] ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐ ๋ฐฉ๋ฒ
1. ํ๋ก์ ํธ ํด๋ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ์ฐํด๋ฆญ > Export > Java > JAR file
2. ์ํ๋ ํด๋์ค ์ ํ> next > finish
๋ค๋ฅธ ํด๋์์ ์์ฑํ ํด๋์ค๋ฅผ importํ์ฌ ์ฌ์ฉํ ์ ์๋ค.
import api01.Object.(ํด๋์ค๋ช );
๊ฐ์ฒด ๋น๊ต equals() : Object ํด๋์ค์ eqauls() ๋ฉ์๋๋ ๋น๊ต ์ฐ์ฐ์์ธ ==์ ๋์ผํ ๊ฒฐ๊ณผ๋ฅผ ๋ฆฌํดํ๋ค. ๋ ๊ฐ์ฒด๊ฐ ๋์ผํ ๊ฐ์ฒด๋ผ๋ฉด true๋ฅผ ๋ฆฌํดํ๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด false๋ฅผ ๋ฆฌํดํ๋ค.
๊ฐ์ฒด ๋ฌธ์ ์ ๋ณด toString() : Objectํด๋์ค์ toString() ๋ฉ์๋๋ ๊ฐ์ฒด์ ๋ฌธ์ ์ ๋ณด๋ฅผ ๋ฆฌํดํ๋ค. ๊ฐ์ฒด์ ๋ฌธ์ ์ ๋ณด๋ ๊ฐ์ฒด๋ฅผ ๋ฌธ์์ด๋ก ํํํ ๊ฐ์ ๋งํ๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก Objectํด๋์ค์ toString() ๋ฉ์๋๋ "ํด๋์ค๋ช @16์ง์ํด์์ฝ๋" ๋ก ๊ตฌ์ฑ๋ ๋ฌธ์ ์ ๋ณด๋ฅผ ๋ฆฌํดํ๋ค.
String ํด๋์ค์ equals()
heap | stack | ||
h | a | 0x100 | |
i | |||
b | 0x100 | ||
new String hi | 0x200 | x | 0x200 |
new String hi | 0x300 | y | 0x300 |
new๋ผ๋ ํค์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ๋ฐ๋ก ํ ๋น๋ฐ๋๋ค. ๋ฐ๋ผ์ x, y์ ์ฃผ์๊ฐ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ 21๋ผ์ธ์ด ์ถ๋ ฅ์ด ์๋๋ค.
String์ equals()ํจ์๋ก ์ฒ๋ฆฌํ์.
https://docs.oracle.com/en/java/javase/14/docs/api/java.base/java/lang/String.html
์์ 1)
@Overrideํด์ ์ต์์ ํด๋์ค์ธ Object ํด๋์ค๊ฐ ์ ๊ณตํ๋ eqaulsํจ์๋ฅผ ์ฌ์ ์ ํ ์ ์๋ค.
pwd ๋งค๊ฐ๋ณ์ ํ๋ ๋ ์ถ๊ฐํด์ ์์ฑํ์ฌ ๊ฒฐ๊ณผ๊ฐ์ ๋น๊ตํด๋ณด์.
์์ 2)
toString()์ผ๋ก value (Int ํด๋์ค๋ Integer) ๋ฅผ String์ผ๋ก ๋ฐ๊พธ์๋ค.
member.toString()
Su.java -> DTO ํน์ VO ๋ผ๊ณ ๋ถ๋ฅธ๋ค. (๋ฐ์ดํฐ ์ ์๋ถ๋ถ)