Java17 [JAVA] Lambda Lambda(๋๋ค)๊ฐ ๋ญ์์๋๋ค๋ ์ ์ํ์๋ฉด ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ํํ๋ก ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ฝ๋ ๋ธ๋ก์ด๋ค.์ด์ ์ ์ ์ํ๋ ์ต๋ช ํจ์๋ฅผ ์ง์นญํ๋ ์ฉ์ด์ด๊ธฐ๋ ํ๋ฉด์ ๋์ถฉ ํด๋์ค๋ฅผ ์ ์ธํด์ ๋ฉ์๋๋ฅผ ๋ง๋ค๊ณ ... ์ด๊ฒ ๋๋ฌด ๋นํจ์จ์ ์ด๋ผ๊ณ ์ฌ๊ฒจ์ ๋์ค๊ฒ ๋ ๊ฑฐ + ์ฝ๋๋ฅผ ๊ฐ๊ฒฐํ๊ฒ ํ๊ธฐ ์ํจ์ ์ด์ ๋ก ๋์จ ํจ์์ด๋ค. ๋๋ค ์ ์ฐ๋์ฝ๋๊ฐ ๊ฐ๊ฒฐํด์ง๋ค. public class LambdaTest { public static void main(String[] args) { MyInterface m1 = new MyInterface() { //1.์ต๋ช ์ ์ด์ฉํ MyInterface ๊ตฌํ๋ถ @Override public int max(int a, int b){ .. 2024. 7. 24. [JAVA] Comparable? Comparator? ์๋ก ๊ฐ์ฒด ๊ฐ์ sort๋ฅผ ์ํํ๋ ์ค Comparable์ด๋ผ๊ณ ํ๋ ๊ฒ๊ณผ Comparator๋ผ๊ณ ํ๋ ๊ฒ์ด ์กด์ฌํด ๋ ์ค ์ด๋ค ๊ฑธ ์ด๋ ์ํฉ์ ์จ์ผ ํ๋..๋ผ๋ ์๊ฐ์ผ๋ก ์์ฑํ๋ค. ๊ณตํต์ - ๋ชจ๋ ์ธํฐํ์ด์ค๋ค.- ์ํ๋ ๊ฐ์ฒด์ ์ถ๊ฐํ๊ณ , ๊ฐ๊ฐ ์๊ตฌ๋ก ํ๋ ๋ฉ์๋(๋น๊ต ๋ฉ์๋)๋ฅผ ๊ตฌํํด์ฃผ๋ฉด ๋๋ค. Comparable- compareTo(T o) return: int- ์๊ธฐ ์์ ๊ณผ ๋งค๊ฐ๋ณ์ ๊ฐ์ฒด๋ฅผ ๋น๊ตํ๋ค.- ์๊ธฐ ์์ ์ ๊ธฐ์ค์ผ๋ก ๋ด๊ฐ ๋ ํฌ๋ฉด ์์, ์๋๊ฐ ๋ ํฌ๋ฉด ์์๋ฅผ ๋ฐํํ์ฌ ์ฌ์ฉํ๋ค.- ๋ฌธ์์ด์ ๊ฒฝ์ฐ ์ข ๋ค๋ฅธ๋ฐ, ๊ธฐ์ค๊ฐ์ ๋น๊ต๋์์ด ํฌํจ๋์ด ์๋ค๋ฉด, ์๋ก์ ๋ฌธ์์ด ๊ธธ์ด์ ์ฐจ์ด๊ฐ์ ๋ฆฌํดํ๋ค.- ๋ญ์๋ฆฌ๋ํ๋ฉด ์์๋ฅผ ๋ณด์String str = "abcd";System.out.println(str.com.. 2024. 7. 23. [JAVA] Generic ์๋ก ์ด๋์ ๊ฐ ์๋ฐ๋ก ๋ง๋ ์ฝ๋๋ฅผ ๋ณธ ์ ์ด ์๋ค๋ฉด ArrayList ๊ฐ์ ํ์์ ๋ฌธ์ฅ์ ๋ณธ ์ ์ด ์์ ๊ฒ์ด๋ค.์ ์์ ๋ด๊ฐ ์ํ๋ ํ์ ์ ๋ฃ์ผ๋ฉด ๊ทธ ํ์ ์ ๋ง๋ ๊ฐ์ฒด๊ฐ ์์ฑ์ด ๋๋๋ฐ ์ด๋ฌํ ๋ฐฉ์์ด Generic์ด๋ค. Generic Generic์ ๋ฐ์ดํฐ ํ์์ ์์กดํ์ง ์๊ณ , ํ๋์ ๊ฐ์ด ์ฌ๋ฌ ๊ฐ์ ๋ค๋ฅธ ๋ฐ์ดํฐ ํ์ ์ ๊ฐ์ง๋๋ก ํด์ฃผ๋ ๋ฐฉ๋ฒ์ด๋ค.์ด๊ฑธ ์กฐ๊ธ ๋ ์์ด ๋ณด์ด๊ฒ ํํํ์๋ฉด ์ปดํ์ผ ๋ ํ์ ์ ์ฒดํฌํ๊ฒ ํด์ฃผ๋ ๋ฐฉ๋ฒ์ด๋ค.Generic์ ๊ฐ์ฒด์ ํ์ ์ ๋ํ ์์ ์ฑ์ ๋์ด๊ณ , ํ ๋ณํ์ ๋ฒ๊ฑฐ๋ก์์ ์ค์ด๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.๊ฐ ํ๋ฉด์ ์ธ ์ด์ ์ด์ง๋ง, ํ ๊ฐ์ง ์์๋ฅผ ๋ค์ด ์๊ฐํด ๋ณด๋ฉด ์ ์ฐ๋์ง ๋ฐ๋ก ์ดํดํ ์ ์๋ค.์๋ก ์์ ์ธ๊ธํ ArrayList์ ํ์ ์ด ๋ง์ฝ ์ง์ ๋์ด ์๋ค๋ฉด, ๊ฐ๋ฐ์๋ ์๋ง์ ํ์ ์ Array.. 2024. 7. 22. [JAVA] ์ถ์ ์๋ก ์ด์ ๊ธ์์ ๊ฐ๋ณ๊ฒ ์ ์ํ ์ถ์์ ๋ํด ์์ฑํ๋ค. ์ถ์ ํด๋์ค์ถ์ ํด๋์ค๋ ๋ถ๋ชจ๊ฐ ์์์ ํ๋๋ฐ ๋ง์ ์์ ํด๋์ค์์ ์ฌ์ ์๋ฅผ ๊ณ์ํ๋ค ๋ณด๋ '์ด๋ด ๊ฑฐ๋ฉด ๋ถ๋ชจ ํด๋์ค ์ชฝ์ ๊ตณ์ด ๋ฉ์๋๋ฅผ ์์ฑํ ํ์๊ฐ ์๋..?' ํด์ ๋์ค๊ฒ ๋ ํด๋์ค์ด๋ค. ํค์๋๋ก๋ abstract๋ผ๋ ํค์๋๋ฅผ ์ด์ฉํด ์ ์ธ๋ง ํ๊ณ ๊ตฌํ๋ถ๋ ;๋ก ๋์ฒดํ๋ค.-> ์์ ์ ์ฉ ๋ฉ์๋๋ผ๋ ๋ป์ผ๋ก ์์์ ํด๋น ๋ฉ์๋๋ฅผ ๋ฌด์กฐ๊ฑด ์ฌ์ ์ํด์ผ ํ๋ค. ํน์ง์ผ๋ก๋ ๊ตฌํ๋ถ๊ฐ ์๋ ๋ฉ์๋๊ฐ ์๋ ๋งํผ ๊ฐ์ฒด๋ฅผ ์์ฑํ ์ ์๋ค(์ฐธ์กฐ๋ ๊ฐ๋ฅํ๋ค) ๋ง์ฝ ์์ ๋ฐ์ abstract ๋ฉ์๋๋ฅผ ์ฌ์ ์๋ฅผ ์ ํ๋ค๋ฉด ์์ ํด๋์ค๋ abstract ํด๋์ค๊ฐ ๋๋ค. ์ถ์ํด๋์ค์ ๋ชฉ์ ์ ๊ตฌํ์ ๊ฐ์ ํ์ฌ ํ๋ก๊ทธ๋จ์ ์์ ์ฑ์ด ํฅ์๋๊ฒ๋ ํ๋ ๊ฒ์ด๋ค. abstract class .. 2024. 7. 20. [JAVA] ๋คํ์ฑ Encapsulation- ์ธ๋ถ์์ ๋ฐ์ดํฐ์ ์ ๊ทผ์ ๋ง๊ธฐ ์ํ ๊ธฐ๋ฒ์ด๋ค.- ๋ฉค๋ฒ ๋ณ์๋ค์ private์ ์ ์ธํด ์ธ๋ถ์์์ ์ ๊ทผ์ ์ฐจ๋จ- ์ ๊ทผ ๊ฒฝ๋ก๋ getter, setter๋ก๋ง ์ ๋ํ๋ ๋ฐฉ์์ ์ฌ์ฉํ๋ค. Singleton- ๊ฐ์ฒด๋ฅผ ์ฒ์ ํ๋ฒ ์ ์ธํด ๋๊ณ ,์ฌ์ฌ์ฉํจ- ์ฌ๋ฌ ๊ฐ์ ๊ฐ์ฒด๊ฐ ํ์ ์๊ฑฐ๋, ๊ฐ์ฒด์ ๋น์ฉ์ด ์ปค ์ฝ์ /์ญ์ ์ ๋ถํธํจ์ด ์๊ธฐ๋ ๊ฒฝ์ฐclass SingletonClass { private static SingletonClass Instance; //privateํ Instance ๊ฐ์ฒด๋ฅผ static์ผ๋ก ์์ฑ private SingletonClass() { //์์ฑ์ ์ฌ์ฉ์ ์ ํ Instance = new SingletonClass(); // ํด๋์ค ๋ก๋ฉ์ค ์์ฑ }public s.. 2024. 7. 18. [JAVA] ์ฝ๋ ์ธ ์์ฑํ ๊ฒ๋ค ์๋ก ์ด ๊ธ์ ์ ๋ชฉ์ ์ด๋ป๊ฒ ์ ํด์ผ ํ ์ง ์ ๋ชจ๋ฅด๊ฒ ๋ค. ๋ณดํต ์ฐ๋ฆฌ๊ฐ ์๊ฐํ๋ ๋ฌธ๋ฒ์ ์ธ ์ฝ๋ ์ธ์ ์์ฑํ ๋ถ๋ถ๋ค์ ๋ํด ์๊ธฐํด๋ณด๋ ค๊ณ ํ๋ค. Annotation(์ฃผ์)- ์ปดํ์ผ๋ฌ, JVM, ํ๋ ์ ์ํฌ๋ค์ด ์ฐธ๊ณ ํ๋ ์ฃผ์์ด๋ค.- ์์ค์ฝ๋์ ๋ฉํ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ๋ ํํ๋ก ์ฝ๋์ ๋ํ ์ ๋ณด๋ฅผ ์ถ๊ฐํ๋ค.- ์ฉ๋์ ๋ง์ง ์์ Annotation์ ๋ฃ๋๋ค๋ฉด ์ปดํ์ผ ์ค ์๋ฌ๊ฐ ๋ ์๋ ์๋ค.- @Deprecated: ํด๋น ๋ฉ์๋(๋ณ์)๊ฐ ํ์ ๋ฒ์ ์ ํธํ์ฑ ๋ฌธ์ ๋ก ์ญ์ ํ๊ธฐ ๊ณค๋ํ ๋ ์ฌ์ฉํ๋ค.- @Override: ํด๋น ๋ฉ์๋๊ฐ ์์ ํด๋์ค์ ๋ฉ์๋๋ฅผ ์ฌ์ ์ ํ๋ค๋ ๊ฒ์ ์๋ฆฌ๊ธฐ ์ํ ์ฃผ์์ด๋ค.- @SuppressWarnings: ์ปดํ์ผ ๊ฒฝ๊ณ ๋ฉ์์ง๋ฅผ ์ถ๋ ฅํ์ง ์๊ฒ ํด์ฃผ๋ ์ฃผ์์ด๋ค. Package + Impor.. 2024. 7. 17. ์ด์ 1 2 3 ๋ค์