λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
728x90

πŸ—‚.λŒ€μ™Έν™œλ™24

[DB] DML μ—°μŠ΅λ¬Έμ œ 🌞 였라클둜 λ°°μš°λŠ” λ°μ΄ν„°λ² μ΄μŠ€ 개둠과 μ‹€μŠ΅ μ—°μŠ΅λ¬Έμ œ 1 λ§ˆλ‹Ήμ„œμ μ˜ 고객이 μš”κ΅¬ν•˜λŠ” λ‹€μŒ μ§ˆλ¬Έμ— λŒ€ν•΄ SQL 문을 μž‘μ„±ν•˜μ‹œμ˜€. (1) λ„μ„œλ²ˆν˜Έκ°€ 1인 λ„μ„œμ˜ 이름 (2) 가격이 20,000원 이상인 λ„μ„œμ˜ 이름 (3) λ°•μ§€μ„±μ˜ 총 ꡬ맀앑(λ°•μ§€μ„±μ˜ κ³ κ°λ²ˆν˜ΈλŠ” 1번으둜 놓고 μž‘μ„±) (4) 박지성이 κ΅¬λ§€ν•œ λ„μ„œμ˜ 수(λ°•μ§€μ„±μ˜ κ³ κ°λ²ˆν˜ΈλŠ” 1번으둜 놓고 μž‘μ„±) SELECT BOOKNAME FROM BOOK WHERE BOOKID = 1; SELECT BOOKNAME FROM BOOK WHERE PRICE >= 20000; SELECT SUM(SALEPRICE) FROM ORDERS WHERE CUSTID = 1; SELECT COUNT(*) FROM ORDERS WHERE CUSTID =1; 2 λ§ˆλ‹Ήμ„œμ μ˜ 운영자.. 2023. 12. 28.
[JAVA] μ˜ˆμ™Έ Exception 🚨 였λ₯˜ Error 컴파일 였λ₯˜: 문법(Syntax)이 μ˜¬λ°”λ₯΄μ§€ μ•Šμ€ μƒνƒœ μ‹€ν–‰μ˜€λ₯˜(Runtime Error) μ—λŸ¬: μ‹œμŠ€ν…œμ΄ 정상적 κΈ°λŠ₯을 μˆ˜ν–‰ν•  수 μ—†λŠ” μƒνƒœ – 수슡 λΆˆκ°€ μ˜ˆμ™Έ: μ‹€ν–‰ 쀑 예기치 μ•Šμ€ 문제 λ°œμƒν•œ μƒνƒœ – 수슡 κ°€λŠ₯ λ…Όλ¦¬μ˜€λ₯˜: ν”„λ‘œκ·Έλž˜λ¨Έκ°€ μ›ν•˜λŠ” κ²°κ³Όκ°€ μ‚°μΆœλ˜μ§€ μ•Šμ€ μƒνƒœ Exception: μ˜ˆμ™Έ 잘λͺ»λœ μ‚¬μš©, μ½”λ”©μœΌλ‘œ μΈν•œ 였λ₯˜μ΄λ‹€. 일반 μ˜ˆμ™Έ(Exception): μ»΄νŒŒμΌλŸ¬κ°€ μ˜ˆμ™Έ 처리 μ½”λ“œ μ—¬λΆ€λ₯Ό κ²€μ‚¬ν•˜λŠ” μ˜ˆμ™Έμ΄λ‹€. μ‹€ν–‰ μ˜ˆμ™Έ(Runtime Exception): μ»΄νŒŒμΌλŸ¬κ°€ μ˜ˆμ™Έ 처리 μ½”λ“œ μ—¬λΆ€λ₯Ό κ²€μ‚¬ν•˜μ§€ μ•ŠλŠ” μ˜ˆμ™Έμ΄λ‹€. πŸ›  μ˜ˆμ™Έ 처리 κ°‘μž‘μŠ€λŸ¬μš΄ μ’…λ£Œλ₯Ό 방지해 ν”„λ‘œκ·Έλž¨μ„ 정상 μˆ˜ν–‰ν•  수 μžˆλ„λ‘ ν•˜λŠ” 것이닀. try{ // μ˜ˆμ™Έ λ°œμƒ κ°€λŠ₯μ„± μ½”λ“œ μž‘μ„± } catch(Exception.. 2023. 12. 20.
[JAVA] Singleton Pattern πŸ“’ Singleton Pattern μ‹±κΈ€ν„΄ νŒ¨ν„΄: 객체λ₯Ό ν•˜λ‚˜λ§Œ 생성 ν•˜λ„λ‘ ν•˜λ©°, μƒμ„±λœ ν•œ 개의 객체λ₯Ό 가지고 μ–΄λ””μ—μ„œλ“ μ§€ μ°Έμ‘°ν•  수 μžˆλ„λ‘ ν•˜λŠ” νŒ¨ν„΄μ΄λ‹€. 객체 생성을 ν΄λž˜μŠ€μ•ˆμ—μ„œ μˆ˜ν–‰ν•˜λ©° μ™ΈλΆ€μ—λŠ” μƒμ„±λœ 객체λ₯Ό λ°˜ν™˜ν•΄μ£ΌκΈ°λ§Œ ν•˜λ©΄ λœλ‹€. λ”°λΌμ„œ μƒμ„±μžλŠ” private둜 μ„ μ–Έν•΄μ•Όν•œλ‹€. public class DuckManager { private static DuckManager manager = new DuckManager(); private Duck[] ducks = new Duck[20]; private DuckManager() { makeDucks(); } public static DuckManager getDuckManager() { return manager; } } 🎨 μ‚¬μš©λ²• packag.. 2023. 12. 18.
[JAVA] μžλ°” μΈν„°νŽ˜μ΄μŠ€ 🧸 μΈν„°νŽ˜μ΄μŠ€ 닀쀑 상속은 두 κ°œμ΄μƒμ˜ ν΄λž˜μŠ€λ‘œλΆ€ν„° μƒμ†λ°›λŠ” 것을 λ§ν•œλ‹€. μžλ°”λŠ” μ›μΉ™μ μœΌλ‘œ 쀑 상속을 μ§€μ›ν•˜μ§€ μ•ŠλŠ”λ‹€. ν•˜μ§€λ§Œ 닀쀑 상속을 μœ„ν•΄ μΈν„°νŽ˜μ΄μŠ€ 클래슀λ₯Ό μ œκ³΅ν•˜κ²Œ λ˜μ—ˆλ‹€. μΈν„°νŽ˜μ΄μŠ€ ν΄λž˜μŠ€λŠ” λ³€μˆ˜λ₯Ό μ§€μ›ν•˜μ§€ μ•ŠμœΌλ‚˜(λͺ…μΉ­ 좩돌 방지) μƒμˆ˜λŠ” μ„ μ–Έ κ°€λŠ₯(public static final)ν•˜λ‹€. 그리고 좔상 λ©”μ†Œλ“œ(μ„œλΈŒ ν΄λž˜μŠ€μ—μ„œ μž¬μ •μ˜ν•˜λ©΄ 좩돌 방지가 되기 λ•Œλ¬Έμ—)만 μ„ μ–Έ κ°€λŠ₯ν•˜λ‹€. 즉, μ½”λ“œμ˜ μž¬μ •μ˜λ₯Ό μœ„ν•¨μ΄ μ•„λ‹ˆλΌ μ œμ–΄λ§Œμ„ μœ„ν•œ ν΄λž˜μŠ€μ΄λ‹€. πŸ—„ 클래슀의 μ’…λ₯˜ 더보기 일반 클래슀 = κ΅¬ν˜„ 클래슀 μΈμŠ€ν„΄μŠ€ 생성 κ°€λŠ₯ (new μ—°μ‚°μž μ‚¬μš© κ°€λŠ₯) 좔상 클래슀 일반 λ©”μ†Œλ“œ + 좔상 λ©”μ†Œλ“œ ν•˜λ‚˜ μ΄μƒμ˜ 좔상 λ©”μ†Œλ“œλ₯Ό 가지고 μžˆλŠ” 클래슀 μΈμŠ€ν„΄μŠ€ 생성 λΆˆκ°€λŠ₯ μΈν„°νŽ˜μ΄μŠ€ 클래슀 μƒμˆ˜μ™€ 좔상 λ©”μ†Œλ“œ 인슀.. 2023. 12. 18.
[JAVA] μžλ°” λ°°μ—΄ 🎹 μžλ°”μ˜ λ°°μ—΄ μžλ°”μ˜ 배열은 μ—¬λŸ¬ 개의 같은 μ’…λ₯˜μ˜ λ°μ΄ν„°νƒ€μž…μ„ λ¬Άμ–΄μ„œ κ΄€λ¦¬ν•˜λŠ” κΈ°μˆ μ΄λ‹€. μ œμ•½ 쑰건이 같은 μ’…λ₯˜μ˜ λ°μ΄ν„°λ§Œ λ¬Άμ–΄μ•Ό ν•˜λŠ” 것이닀. μ—¬λŸ¬ λ³€μˆ˜λ₯Ό ν•˜λ‚˜λ‘œ λ¬Άμ–΄ ν•˜λ‚˜μ˜ μ΄λ¦„μœΌλ‘œ λ‹€λ£° 수 있게 물리적으둜 μ—°μ†λœ λ©”λͺ¨λ¦¬μ— μ €μž₯ν•˜λŠ” ꡬ쑰이닀. λ°°μ—΄λͺ…μ—λŠ” 전체 λ©”λͺ¨λ¦¬ 곡간을 닀루기 μ–΄λ €μš°λ‹ˆ μ‹œμž‘μ£Όμ†Œλ§Œ μ €μž₯ν•΄ μ‚¬μš©ν•˜κ²Œ λœλ‹€. 1. 정적 λ°°μ—΄: μ‹€ν–‰ 도쀑 λ°°μ—΄μ˜ 크기λ₯Ό λ³€ν™”μ‹œν‚¬ 수 μ—†λ‹€. (μ‚¬μš©μž μž…μž₯μ—μ„œ λΆˆνŽΈν•œ 것 1) λ°°μ—΄μ˜ 값을 미리 μ•Œ λ•Œ 2) λ°°μ—΄μ˜ 값이 미정일 λ•Œ: μ‹€ν–‰ μ‹œ κ²°μ •λ˜λŠ” 경우 🎯 μ„ μ–Έκ³Ό λ™μ‹œμ— 값을 μ΄ˆκΈ°ν™”ν•΄ 생성 🎯 New μ—°μ‚°μžλ₯Ό μ΄μš©ν•΄ 생성 2. 동적 λ°°μ—΄: μ‹€ν–‰ 도쀑 λ°°μ—΄μ˜ 크기λ₯Ό λ³€ν™”μ‹œν‚¬ 수 μžˆλ‹€. (μ‹œμŠ€ν…œ μž…μž₯μ—μ„œ λΆˆνŽΈν•œ 것) 🎯 Collection Frameworkμ—μ„œ.. 2023. 12. 16.
[JAVA] ν˜• λ³€ν™˜ 🎊 κΈ°λ³Έν˜•μ˜ ν˜• λ³€ν™˜ boolean을 μ œμ™Έν•œ κΈ°λ³Έν˜• λ³€μˆ˜μ˜ νƒ€μž…μ„ 자유둭게 ν˜• λ³€ν™˜ν•΄ μ‚¬μš©ν•  수 μžˆλ‹€. 🎊 μ°Έμ‘°ν˜•μ˜ ν˜• λ³€ν™˜ μ„œλ‘œ λ‹€λ₯Έ ν΄λž˜μŠ€κ°€ ν˜Έν™˜μ΄ κ°€λŠ₯ν•œκ°€? Student student = new Member(); // ??? κ°€λŠ₯ν•œκ°€? student.sname; // X μ‚¬μš© λΆˆκ°€ μ›μΉ™μ μœΌλ‘œ (μ˜ˆμ™ΈμžˆμŒ) μ°Έμ‘°ν˜•λΌλ¦¬μ˜ ν˜• λ³€ν™˜ μ•ˆλœλ‹€. κ΅¬μ„±μš”μ†Œκ°€ λ‹€λ₯΄κΈ° λ•Œλ¬Έμ΄λ‹€. ν•˜μ§€λ§Œ 상속 κ΄€κ³„μ˜ 클래슀(μ°Έμ‘°ν˜•) 간에 ν˜• λ³€ν™˜μ„ μ§€μ›ν•œλ‹€. 슈퍼클래슀의 κ΅¬μ„±μš”μ†Œλ₯Ό λͺ¨λ‘ 가지고 있기 λ•Œλ¬Έμ— μ—…μΊμŠ€νŒ…μ— ν•œν•΄μ„œ ν˜•λ³€ν™˜μ΄ κ°€λŠ₯ν•˜λ‹€. λ³„λ„μ˜ λͺ…λ Ήμ–΄ 없이 암묡적(μžλ™)으둜 지원이 λœλ‹€. Duck dk = (Duck) new RedDuck(); μ—…μΊμŠ€νŒ…μ΄ λ°œμƒν•˜λ©΄, μ„œλΈŒν΄λž˜μŠ€μ—μ„œ ν™•μž₯ν•œ λ³€μˆ˜, λ©”μ†Œλ“œ 등을 μ‚¬μš©ν•  수 μ—†λ‹€. ν•˜.. 2023. 12. 16.
728x90