โข
@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
โฆ
๋ถ๋ณ(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์ฌ๋;