////
Search
โ˜•

Java

์ƒ์†
โ€ข
@Override
โ—ฆ
์˜ค๋ฒ„๋ผ์ด๋”ฉ์ด ๋˜์—ˆ์Œ์„ ๋ช…์‹œํ•˜์—ฌ ์˜ค๋ฒ„๋ผ์ด๋”ฉ์ด ์•„๋‹Œ ๊ณณ์— ๋ถ™์ด๋ฉด ์˜ค๋ฅ˜ ๋ฐœ์ƒ
โ€ข
equals
โ—ฆ
String์—์„œ๋Š” Object์˜ equals๋ฅผ ์˜ค๋ฒ„๋ผ์ด๋”ฉํ•˜์—ฌ ๋‚ด์šฉ์ด ๊ฐ™์€์ง€๋งŒ ํ™•์ธํ•œ๋‹ค.
โ—ฆ
์›๋ž˜ Object๋Š” == ์—ฐ์‚ฐ์œผ๋กœ ๊ฐ์ฒด๊ฐ€ ๊ฐ™์€ ๊ฒƒ์ธ์ง€ ๋น„๊ตํ•œ๋‹ค.
โ€ข
A instanceof B
โ—ฆ
A, B๋ฅผ ๋ช…์‹œํ•˜์—ฌ A์— ์—ฐ๊ฒฐ๋œ ๊ฐ์ฒด๊ฐ€ B์ธ์ง€ ํ™•์ธ
โ—ฆ
new๋กœ ์„ ์–ธ๋œ ๊ฐ์ฒด ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๊ทธ ๋ถ€๋ชจ๋ฅผ B์— ๋„ฃ์–ด๋„ true
Object object = new Person(); Object instanceof Person // true Object instanceof Object // true
Java
๋ณต์‚ฌ
โ€ข
A.isInstance(B)
โ—ฆ
A, B๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์‹คํ–‰ ์ „๊นŒ์ง€ ๋ชจ๋ฅผ ๋•Œ A์— ์—ฐ๊ฒฐ๋œ ๊ฐ์ฒด๊ฐ€ B์ธ์ง€ ํ™•์ธ
public boolean isSamePiece(Object piece1, Object piece2) { return piece1.isInstance(piece2); }
Java
๋ณต์‚ฌ
String, StringBuffer, StringBuilder
โ€ข
String
โ—ฆ
๋ถˆ๋ณ€(immutable)์œผ๋กœ ๊ฐ’์ด ๋‹ฌ๋ผ์ง€๋ฉด ์ƒˆ๋กœ์šด ๊ณต๊ฐ„์„ ํ• ๋‹นํ•˜๋ฏ€๋กœ GC๊ฐ€ ์ฒ˜๋ฆฌํ•ด์•ผ๋  ์ผ์ด ๋งŽ์•„์ง„๋‹ค.
โ—ฆ
thread safeํ•˜๋‹ค. โ†’ ex) ์“ฐ๋ ˆ๋“œ 1์—์„œ String str๋ฅผ ์„ ์–ธํ•˜๊ณ  ์“ฐ๋ ˆ๋“œ 2์—์„œ ์ด๊ฒƒ์„ ์ˆ˜์ •ํ•˜๋ฉด ์“ฐ๋ ˆ๋“œ1์˜ str์€ ๊ทธ๋Œ€๋กœ์ด๊ณ  ์“ฐ๋ ˆ๋“œ2์˜ ๋ ˆํผ๋Ÿฐ์Šค ์ž์ฒด๊ฐ€ ๋ฐ”๋€Œ์–ด์„œ ์•ˆ์ „ํ•˜๋‹ค.
โ€ข
StringBuffer
โ—ฆ
append(), delete()๋“ฑ์„ ํ™œ์šฉํ•˜์—ฌ ๊ธฐ์กด ๊ณต๊ฐ„์„ ๋‚ด๋น„๋‘๊ณ  ์ถ”๊ฐ€ ๋˜๋Š” ์‚ญ์ œํ•˜๋Š” ์ž‘์—… ์ˆ˜ํ–‰
โ—ฆ
Thread Safeํ•˜๋‹ค. โ†’ append, delete๊ฐ€ ๋™๊ธฐํ™” ๋ฉ”์†Œ๋“œ๋ผ์„œ ๋ฆฌํ„ด๋˜๋Š” StringBuffer๊ฐ’์ด Thread safeํ•˜๋‹ค.
โ€ข
StringBuilder
โ—ฆ
StringBuffer์™€ ์‚ฌ์šฉ๋ฒ•์€ ๋™์ผํ•˜๋‹ค.
โ—ฆ
Thread Safeํ•˜์ง€ ์•Š๋‹ค.
โ—ฆ
StringBuffer๋ณด๋‹ค 2๋ฐฐ ๋น ๋ฅด๋‹ค.
โ€ข
์ฐธ๊ณ 
์ฐธ์กฐ, ์ฐธ์กฐ๋ณ€์ˆ˜
โ€ข
์ฐธ์กฐ
โ—ฆ
ex) new ์‚ฌ๋žŒ();
โ€ข
์ฐธ์กฐ ๋ณ€์ˆ˜
โ—ฆ
ex) ์‚ฌ๋žŒ a์‚ฌ๋žŒ;