์ ์ฒด ๊ธ(658)
-
[ํ๋ก๊ทธ๋๋จธ์ค] Lv1. ๋ฌธ์์ด ๋ด ๋ง์๋๋ก ์ ๋ ฌํ๊ธฐ
๋ฌธ์ ์ค๋ช ๋ฌธ์์ด๋ก ๊ตฌ์ฑ๋ ๋ฆฌ์คํธ strings์, ์ ์ n์ด ์ฃผ์ด์ก์ ๋, ๊ฐ ๋ฌธ์์ด์ ์ธ๋ฑ์ค n๋ฒ์งธ ๊ธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌํ๋ ค ํฉ๋๋ค. ์๋ฅผ ๋ค์ด strings๊ฐ ["sun", "bed", "car"]์ด๊ณ n์ด 1์ด๋ฉด ๊ฐ ๋จ์ด์ ์ธ๋ฑ์ค 1์ ๋ฌธ์ "u", "e", "a"๋ก strings๋ฅผ ์ ๋ ฌํฉ๋๋ค. ์ ํ ์กฐ๊ฑด strings๋ ๊ธธ์ด 1 ์ด์, 50์ดํ์ธ ๋ฐฐ์ด์ ๋๋ค. strings์ ์์๋ ์๋ฌธ์ ์ํ๋ฒณ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. strings์ ์์๋ ๊ธธ์ด 1 ์ด์, 100์ดํ์ธ ๋ฌธ์์ด์ ๋๋ค. ๋ชจ๋ strings์ ์์์ ๊ธธ์ด๋ n๋ณด๋ค ํฝ๋๋ค. ์ธ๋ฑ์ค 1์ ๋ฌธ์๊ฐ ๊ฐ์ ๋ฌธ์์ด์ด ์ฌ๋ฟ ์ผ ๊ฒฝ์ฐ, ์ฌ์ ์์ผ๋ก ์์ ๋ฌธ์์ด์ด ์์ชฝ์ ์์นํฉ๋๋ค. ์ ์ถ๋ ฅ ์ strings n return ["sun", "b..
2023.03.07 -
[์ดํํฐ๋ธ ์๋ฐ] Item20 ์๋ฒฝ๊ณต๋ต. ๋ํดํธ ๋ฉ์๋์ Object ๋ฉ์๋
item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ. " p.135 ๋ํดํธ ๋ฉ์๋๋ equals, hashCode, toString ๊ฐ์ Object ๋ฉ์๋๋ฅผ ์ฌ์ ์ํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค." public interface MyInterface { default String toString() { return "myString"; } default int hashCode() { return 10; } default boolean equals(Object o) { return true; } } ์ด๋ ๊ฒ ์ธํฐํ์ด์ค์ Object ๋ฉ์๋๋ฅผ ์ฌ์ ์ํ๋ ค๊ณ ํ๋ฉด Default method 'toString' overrides a member of 'java.lang.Object' ๋ผ๊ณ ์ปดํ์ผ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค. ์ฌ์ค ์ธํฐํ..
2023.03.06 -
[์ดํํฐ๋ธ ์๋ฐ] Item20 ์๋ฒฝ๊ณต๋ต. ํ ํ๋ฆฟ ๋ฉ์๋ ํจํด
item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ. " p.132 ํ ํ๋ฆฟ ๋ฉ์๋ ํจํด" ๐ ํ ํ๋ฆฟ ๋ฉ์๋ ํจํด์ด๋? : ์๊ณ ๋ฆฌ์ฆ ๊ตฌ์กฐ๋ฅผ ์๋ธ ํด๋์ค๊ฐ ํ์ฅํ ์ ์๋๋ก ํ ํ๋ฆฟ์ผ๋ก ์ ๊ณตํ๋ ๋ฐฉ๋ฒ ์ ์ฒด์ ์ผ๋ก๋ ๋์ผํ๋ฐ ๋ถ๋ถ์ ์ผ๋ก ๋ค๋ฅธ ๋ถ๋ถ์ ๋ฐ๋ก ํ์ฅํด์ ์์ฑํ ์ ์๋๋ก ๋์์ฃผ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ฝ๋ ์ค๋ณต์ ์ต์ํํ ์ ์๋ค! public abstract class FileProcessor { private String path; public FileProcessor(String path) { this.path = path; } // templateMethod() public final int process() { try(BufferedReader reader = new BufferedReader(new File..
2023.03.06 -
[์ดํํฐ๋ธ ์๋ฐ] Item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ. (์ธํฐํ์ด์ค์ ์ถ์ ๊ณจ๊ฒฉ skeletal ํด๋์ค)
[์ดํํฐ๋ธ ์๋ฐ] Item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ. [์ดํํฐ๋ธ ์๋ฐ] Item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ. (tistory.com) [์ดํํฐ๋ธ ์๋ฐ] Item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ. [์ดํํฐ๋ธ ์๋ฐ] Item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ. ์๋ฐ๊ฐ ์ ๊ณตํ๋ ๋ค์ค ๊ตฌํ ๋ฉ์ปค๋์ฆ์ผ๋ก๋ ์ถ์ํด๋์ค์ ์ธํฐํ์ด์ค ์ด๋ ๊ฒ ๋๊ฐ์ง๊ฐ ์๋ค. ์๋ฐ 8๋ถํฐ ์ธํฐํ์ด์ค๋ ๋ํดํธ hyejin.tistory.com ๋จผ์ ์ถ์ ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๊ธฐ ์ํด ์ธํฐํ์ด์ค์ ์ฅ์ ์ ๋ํด์ ๊ณต๋ถํ๋ค. ๊ทธ๋ฐ๋ฐ ์ด์ ์ธํฐํ์ด์ค์ ์ถ์ ๊ณจ๊ฒฉ(skeltal implementation) ํด๋์ค๋ฅผ ํจ๊ป ์ ๊ณตํ๋ ์์ผ๋ก ์ธํฐํ์ด์ค์ ์ถ์ ํด๋์ค์ ์ฅ์ ์ ๋ชจ๋ ์ทจํ๋ ๋ฐฉ๋ฒ๋ ์๋ค...
2023.03.06 -
[์ดํํฐ๋ธ ์๋ฐ] Item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ.
[์ดํํฐ๋ธ ์๋ฐ] Item20. ์ถ์ํด๋์ค๋ณด๋ค ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ. ์๋ฐ๊ฐ ์ ๊ณตํ๋ ๋ค์ค ๊ตฌํ ๋ฉ์ปค๋์ฆ์ผ๋ก๋ ์ถ์ํด๋์ค์ ์ธํฐํ์ด์ค ์ด๋ ๊ฒ ๋๊ฐ์ง๊ฐ ์๋ค. ์๋ฐ 8๋ถํฐ ์ธํฐํ์ด์ค๋ ๋ํดํธ ๋ฉ์๋ default method ๋ฅผ ์ ๊ณตํ ์ ์๊ฒ ๋๋ฉด์ ์ด์ ๋ ๋ ๋ฉ์ปค๋์ฆ ๋ชจ๋ ์ธ์คํด์ค ๋ฉ์๋๋ฅผ ๊ตฌํ ํํ๋ก ์ ๊ณตํ ์ ์๋ค. ์ถ์ํด๋์ค์ ์ธํฐํ์ด์ค์ ํฐ ์ฐจ์ด์ ์ผ๋ก๋ ์ถ์ํด๋์ค๊ฐ ์ ์ํ ํ์ ์ ๊ตฌํํ๋ ํด๋์ค๋ ๋ฐ๋์ ์ถ์ํด๋์ค์ ํ์ ํด๋์ค๊ฐ ๋์ด์ผ ํ๋ค๋ ์ ์ด๋ค. ์๋ฐ๋ ๋จ์ผ ์์๋ง ์ง์ํ๊ธฐ ๋๋ฌธ์ ์ถ์ ํด๋์ค ๋ฐฉ์์ ์๋ก์ด ํ์ ์ ์ ์ํ๋๋ฐ ์ปค๋ค๋ ์ ์ฝ์ ์ป๊ฒ ๋๋ค. ๋ฐ๋ฉด ์ธํฐํ์ด์ค๊ฐ ์ ์ธํ ๋ฉ์๋๋ฅผ ๋ชจ๋ ์ ์ํ๊ณ ๊ทธ ์ผ๋ฐ ๊ท์ฝ์ ์ ์งํจ ํด๋์ค๋ผ๋ฉด ๋ค๋ฅธ ์ด๋ค ํด๋์ค๋ฅผ ์์ํ๋ ๊ฐ์ ํ์ ์ผ๋ก ์ทจ๊ธ๋๋ค. ..
2023.03.03 -
[์ดํํฐ๋ธ ์๋ฐ] Item19. ์์์ ๊ณ ๋ คํด ์ค๊ณํ๊ณ ๋ฌธ์ํํ๋ผ. ๊ทธ๋ ์ง ์์๋๋ผ๋ฉด ์์์ ๊ธ์งํ๋ผ.
[์ดํํฐ๋ธ ์๋ฐ] Item19. ์์์ ๊ณ ๋ คํด ์ค๊ณํ๊ณ ๋ฌธ์ํํ๋ผ. ๊ทธ๋ ์ง ์์๋๋ผ๋ฉด ์์์ ๊ธ์งํ๋ผ. [์ดํํฐ๋ธ ์๋ฐ] Item18. ์์๋ณด๋ค๋ ์ปดํฌ์ง์ ์ ์ฌ์ฉํ๋ผ. (tistory.com) [์ดํํฐ๋ธ ์๋ฐ] Item18. ์์๋ณด๋ค๋ ์ปดํฌ์ง์ ์ ์ฌ์ฉํ๋ผ. [์ดํํฐ๋ธ ์๋ฐ] Item18. ์์๋ณด๋ค๋ ์ปดํฌ์ง์ ์ ์ฌ์ฉํ๋ผ. ์์์ ์ฌ์ฉํ๋ฉด ์ฝ๋๋ฅผ ์ฌ์ฌ์ฉํ ์ ์์ง๋ง, ์๋ชป ์์ํ๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์๋ค. ์์ ํด๋์ค์ ํ์ ํด๋์ค๊ฐ ๋ชจ๋ ๊ฐ์ ํ๋ก๊ทธ๋ hyejin.tistory.com item18์์๋ ์์์ ์ผ๋์ ๋์ง ์๊ณ ์ค๊ณํ๊ณ ์์ํ ๋ ์ฃผ์์ ๋ ๋ฌธ์ํํด๋์ง ์์ ์ธ๋ถ ํด๋์ค๋ฅผ ์์ํ ๋์ ๋ฌธ์ ์ ์ ๋ํด์ ์๊ธฐํ๊ณ ์๋ค. (์ด๋ '์ธ๋ถ'๋ ํ๋ก๊ทธ๋๋จธ์ ํต์ ๊ถ ๋ฐ์ ์์ด์ ์ธ์ ์ด๋ป๊ฒ ๋ณ๊ฒฝ๋ ์ง ๋ชจ๋ฅด..
2023.03.03