Today I Learned(TIL)/Java17 Java ๊ธฐ๋ณธํธ ๊ฐ์_๋คํ์ฑ1 ๋คํ์ฑ 1 ๋คํ์ฑ ์์๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๋ํ์ ์ธ ํน์ง์ผ๋ก๋ ์บก์ํ, ์์, ๋คํ์ฑ์ด ์๋ค. ๊ทธ์ค์์ ๋คํ์ฑ์ ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๊ฝ์ด๋ผ ๋ถ๋ฆฐ๋ค.์์ ํ์ตํ๋ ์บก์ํ๋ ์์์ ์ง๊ด์ ์ผ๋ก ์ดํดํ๊ธฐ ์ฝ๋ค. ๋ฐ๋ฉด์ ๋คํ์ฑ์ ์ ๋๋ก ์ดํดํ๊ธฐ๋ ์ด๋ ต๊ณ , ์ ํ์ฉํ๊ธฐ๋ ๋ ์ด๋ ต๋ค. ํ์ง๋ง ์ข์ ๊ฐ๋ฐ์๊ฐ ๋๊ธฐ ์ํด์๋ ๋คํ์ฑ์ ๋ํ ์ดํด๊ฐ ํ์๋ค.๋คํ์ฑ(Polymorphism)์ ์ด๋ฆ ๊ทธ๋๋ก "๋ค์ํ ํํ", "์ฌ๋ฌ ํํ"๋ฅผ ๋ปํ๋ค.ํ๋ก๊ทธ๋๋ฐ์์ ๋คํ์ฑ์ ํ ๊ฐ์ฒด๊ฐ ์ฌ๋ฌ ํ์ ์ ๊ฐ์ฒด๋ก ์ทจ๊ธ๋ ์ ์๋ ๋ฅ๋ ฅ์ ๋ปํ๋ค. ๋ณดํต ํ๋์ ํ์ ์ผ๋ก ๊ณ ์ ๋์ด ์๋ค. ๊ทธ๋ฐ๋ฐ ๋คํ์ฑ์ ์ฌ์ฉํ๋ฉด ํ๋์ ๊ฐ์ฒด๊ฐ ๋ค๋ฅธ ํ์ ์ผ๋ก ์ฌ์ฉ๋ ์ ์๋ค๋ ๋ป์ด๋ค. ๋คํ์ฑ์ ์ดํดํ๊ธฐ ์ํด์๋ 2๊ฐ์ง ํต์ฌ ์ด๋ก ์ ์์์ผ ํ๋ค.๋คํ์ ์ฐธ์กฐ๋ฉ์๋ .. 2024. 12. 2. Java ๊ธฐ๋ณธํธ ๊ฐ์_์์ ์์ ์์ - ์์package extends1.ex1;public class ElectricCar { public void move() { System.out.println("์ฐจ๋ฅผ ์ด๋ํฉ๋๋ค."); } public void charge() { System.out.println("์ถฉ์ ํฉ๋๋ค."); }}package extends1.ex1;public class GasCar { public void move() { System.out.println("์ฐจ๋ฅผ ์ด๋ํฉ๋๋ค."); } public void fillUp() { System.out.println("๊ธฐ๋ฆ์ ์ฃผ์ ํฉ๋๋ค."); }}package extends1.ex.. 2024. 12. 1. Java ๊ธฐ๋ณธํธ ๊ฐ์_final final final ๋ณ์์ ์์final ํค์๋๋ ์ด๋ฆ ๊ทธ๋๋ก ๋! ์ด๋ผ๋ ๋ป์ด๋ค.๋ณ์์ final ํค์๋๊ฐ ๋ถ์ผ๋ฉด ๋๋ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ค.์ฐธ๊ณ ๋ก final์ class, method๋ฅผ ํฌํจํ ์ฌ๋ฌ ๊ณณ์ ๋ถ์ ์ ์๋ค.final - ์ง์ญ ๋ณ์package final1;public class FinalLocalMain { public static void main(String[] args) { // final ์ง์ญ ๋ณ์ final int data1; data1 = 10; // ์ต์ด ํ๋ฒ๋ง ํ ๋น ๊ฐ๋ฅ //data1 = 20; // ์ปดํ์ผ ์ค๋ฅ ๋ฐ์ // final ์ง์ญ ๋ณ์ 2 final int data2 = 10; .. 2024. 11. 28. Java ๊ธฐ๋ณธํธ ๊ฐ์_์ ๊ทผ ์ ์ด์ ์ ๊ทผ ์ ์ด์ ์ ๊ทผ ์ ์ด์ ์ดํด 1์ ๊ทผ ์ ์ด์๋ฅผ ์ฌ์ฉํ๋ฉด ํด๋น ํด๋์ค ์ธ๋ถ์์ ํน์ ํ๋๋ ๋ฉ์๋์ ์ ๊ทผํ๋ ๊ฒ์ ํ์ฉํ๊ฑฐ๋ ์ ํํ ์ ์๋ค.ํ๋์ ์ง์ ์ ๊ทผํด์ ์ํ๋ ๊ฐ์ ์ค์ ํ๋ ๋ฌธ์ ๋ฅผ ๊ทผ๋ณธ์ ์ผ๋ก ํด๊ฒฐํ๊ธฐ ์ํด์๋ ํ๋์ ์ธ๋ถ ์ ๊ทผ์ ๋ง์ ์ ์๋ ๋ฐฉ๋ฒ์ด ํ์ํ๋ค. ์ ๊ทผ ์ ์ด์ ์ดํด 2private ์ ๊ทผ ์ ์ด์๋ ๋ชจ๋ ์ธ๋ถ ํธ์ถ์ ๋ง๋๋ค. ๋ฐ๋ผ์ private์ด ๋ถ์ ๊ฒฝ์ฐ ํด๋น ํด๋์ค ๋ด๋ถ์์๋ง ํธ์ถํ ์ ์๋ค. โ๏ธ ์ฐธ๊ณ ์ข์ ํ๋ก๊ทธ๋จ์ ๋ฌดํํ ์์ ๋๊ฐ ์ฃผ์ด์ง๋ ํ๋ก๊ทธ๋จ์ด ์๋๋ผ ์ ์ ํ ์ ์ฝ์ ์ ๊ณตํ๋ ํ๋ก๊ทธ๋จ์ด๋ค. ์ ๊ทผ ์ ์ด์ ์ข ๋ฅJava๋ 4๊ฐ์ง ์ข ๋ฅ์ ์ ๊ทผ ์ ์ด์๋ฅผ ์ ๊ณตํ๋ค.์ ๊ทผ ์ ์ด์ ์ข ๋ฅprivate : ๋ชจ๋ ์ธ๋ถ ํธ์ถ์ ๋ง๋๋ค.default(package-private) : ๊ฐ์ ํจํค์ง ์.. 2024. 11. 28. Java ๊ธฐ๋ณธํธ ๊ฐ์_ํจํค์ง ํจํค์ง ํจํค์ง - ์์๋งค์ฐ ๋ง์ ํด๋์ค๊ฐ ๋ฑ์ฅํ๋ฉด ๊ด๋ จ ์๋ ๊ธฐ๋ฅ๋ค์ ๋ถ๋ฅํด์ ๊ด๋ฆฌํ๊ณ ์ถ์ด ์ง๋ค.์ปดํจํฐ๋ ๋ณดํต ํ์ผ์ ๋ถ๋ฅํ๊ธฐ ์ํด ํด๋, ๋๋ ํ ๋ฆฌ๋ผ๋ ๊ฐ๋ ์ ์ ๊ณตํ๋ค. Java๋ ์ด๋ฐ ๊ฐ๋ ์ ์ ๊ณตํ๋๋ฐ, ์ด๊ฒ์ด ๋ฐ๋ก ํจํค์ง๋ค.* user * User * UserManager * UserHistory* product * Product * ProductCatalog * ProductImage* order * Order * OrderService * OrderHistory* cart * ShoppingCart * CartItem* payment * Payment * PaymentHistory* shipping * Shipment * ShipmentTracker์ฌ๊ธฐ์ user, p.. 2024. 11. 26. Java ๊ธฐ๋ณธํธ ๊ฐ์_์์ฑ์ ์์ฑ์ ์์ฑ์ - ํ์ํ ์ด์ ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ ์์ ์ ์ด๋ค ์์ ์ ํ๊ณ ์ถ๋ค๋ฉด ์์ฑ์(Construct)๋ฅผ ์ด์ฉํ๋ฉด ๋๋ค.MemberInitpackage construct;public class MemberInit { String name; int age; int grade;}MemberInitMain1package construct;public class MemberInitMain1 { public static void main(String[] args) { MemberInit member1 = new MemberInit(); member1.name = "user1"; member1.age = 15; member1.grade = 90.. 2024. 11. 26. ์ด์ 1 2 3 ๋ค์