Java

μ˜ˆμ™Έμ²˜λ¦¬ 1. κ°œλ… μ˜ˆμ™Έ λ°œμƒν•  것을 λŒ€λΉ„ν•΄μ„œ ν”„λ‘œκ·Έλž¨μ—μ„œ μ œμ–΄ν•  수 μžˆλ„λ‘ μ²˜λ¦¬ν•˜λŠ” κ°œλ… 였λ₯˜μ™€λŠ” λ‹€λ₯΄λ©° ν”„λ‘œκ·Έλž¨ μˆ˜ν–‰ 도쀑에 λ°œμƒν•  수 μžˆλŠ” μž₯애에 λŒ€ν•œ λŒ€μ²˜ 2. νŠΉμ§• - try~catch~finally ꡬ문으둜 μ œμ–΄ - μ˜ˆμ™Έ λ„˜κΈ°κΈ° μœ„ν•΄ throws μ‚¬μš© 3. μ˜ˆμ™Έμ²˜λ¦¬ ν‚€μ›Œλ“œ - try 블둝 : μ˜ˆμ™Έκ°€ λ°œμƒν•  수 μžˆλŠ” μ½”λ“œ 포함 - catch 블둝 : try 블둝 λ‚΄μ—μ„œ λ°œμƒν•œ μ˜ˆμ™Έλ₯Ό 처리 - finally : μ˜ˆμ™Έ λ°œμƒ 여뢀와 상관 없이 μ‹€ν–‰λ˜μ–΄μ•Ό ν•˜λŠ” μ½”λ“œλ₯Ό 포함 - throw : ν”„λ‘œκ·Έλž¨μ—μ„œ 직접 μ˜ˆμ™Έλ₯Ό λ°œμƒμ‹œν‚€κΈ° μœ„ν•΄ μ‚¬μš© - throws : ν•΄λ‹Ή λ©”μ„œλ“œμ—μ„œ μ²˜λ¦¬ν•˜μ§€ μ•Šκ³  ν˜ΈμΆœμžμ—κ²Œ μ˜ˆμ™Έ 처리 μœ„μž„ 4. μ˜ˆμ™Έμ²˜λ¦¬ 방식try { // μ˜ˆμ™Έκ°€ λ°œμƒλ λ§Œν•œ μ½”λ“œ } catch(FileNotFoun..
1. μΆ”μƒν΄λž˜μŠ€(abstract class) - ν•˜λ‚˜ μ΄μƒμ˜ 좔상 λ©”μ„œλ“œ ν¬ν•¨ν•˜λŠ” 클래슀 - 즉 μ™„μ„±λœ λ©”μ„œλ“œ, λ―Έμ™„μ„±λœ λ©”μ„œλ“œ λͺ¨λ‘ κ°€μ§ˆ 수 있음 μΈν„°νŽ˜μ΄μŠ€λŠ” λͺ¨λ“  λ©”μ„œλ“œκ°€ μΆ”μƒλ©”μ„œλ“œλ‘œλ§Œ 이루어져 μžˆμ–΄μ•Ό 함 - μ—¬κΈ°μ„œ μ™„μ„±λœ λ©”μ„œλ“œλŠ” λ©”μ„œλ“œ μ˜†μ— { } μ€‘κ΄„ν˜Έκ°€ μžˆλŠ”κ²ƒ. => κ΅¬ν˜„λœ κ²ƒμœΌλ‘œ λ³Έλ‹€ - μΈμŠ€ν„΄νŠΈλ₯Ό 생성할 수 μ—†λ‹€. μƒμ„±μž 생성 ν•  λ•Œ New ν‚€μ›Œλ“œ μ“Έ 수 μ—†λ‹€λŠ” κ²ƒμž„ - 좔상 클래슀λ₯Ό 상속 받은 ν΄λž˜μŠ€λŠ” λ―Έμ™„μ„±λœ 좔상 λ©”μ„œλ“œλ₯Ό μ˜€λ²„λΌμ΄λ”© ν•΄μ•Ό 객체λ₯Ό 생성할 수 μžˆλ‹€. - μΆ”μƒλ©”μ„œλ“œλŠ” μ˜€λ²„λΌμ΄λ”©μ„ μ „μ œλ‘œ ν•˜κΈ° λ•Œλ¬Έμ— private 으둜 μ„ μ–Έν•  수 μ—†λ‹€. abstract class Animal { abstract void makeSound(); // μ€‘κ΄„ν˜Έ 없이 μ„Έλ―Έλ‘œμ½œλ‘ μœΌλ‘œ λλ‚˜μ•Ό 함 voi..
front controller 방식 둜그인 λ©”μ„œλ“œ κ΅¬ν˜„ν•˜λŠ” μžλ°” μ½”λ“œ  Front Controller νŒ¨ν„΄μ„ μ‚¬μš©ν•˜μ—¬ 둜그인 λ©”μ„œλ“œλ₯Ό κ΅¬ν˜„ν•˜λŠ” Java μ½”λ“œλ‹€μŒκ³Ό 같은 클래슀λ₯Ό μž‘μ„±ν•  것FrontController: λͺ¨λ“  μš”μ²­μ„ μ²˜λ¦¬ν•˜λŠ” 메인 클래슀.Controller: 각 μš”μ²­μ„ μ²˜λ¦¬ν•˜λŠ” μΈν„°νŽ˜μ΄μŠ€.LoginController: 둜그인 μš”μ²­μ„ μ²˜λ¦¬ν•˜λŠ” 클래슀.Request: ν΄λΌμ΄μ–ΈνŠΈμ˜ μš”μ²­μ„ λ‚˜νƒ€λ‚΄λŠ” 클래슀.Response: ν΄λΌμ΄μ–ΈνŠΈμ— λŒ€ν•œ 응닡을 λ‚˜νƒ€λ‚΄λŠ” 클래슀.// Request.javaclass Request { private String action; public Request(String action) { this.action = action; } publ..
βœ… λ¬Έμ œλ‘ μ •μˆ˜ A와 Bλ₯Ό μž…λ ₯받은 λ‹€μŒ, A+Bλ₯Ό 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. β€‹πŸ“₯ μž…λ ₯μž…λ ₯은 μ—¬λŸ¬ 개의 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λ‘œ 이루어져 μžˆλ‹€.각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λŠ” ν•œ μ€„λ‘œ 이루어져 있으며, 각 쀄에 A와 Bκ°€ 주어진닀. (0 μž…λ ₯의 λ§ˆμ§€λ§‰μ—λŠ” 0 두 κ°œκ°€ λ“€μ–΄μ˜¨λ‹€. β€‹πŸ“₯ μΆœλ ₯각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λ§ˆλ‹€ A+Bλ₯Ό 좜λ ₯ν•œλ‹€.β€‹πŸ’‘ ν’€μ΄ βœ… 1. Scanner ν‹€λ¦° μ½”λ“œ β–Όimport java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (true) { int a = sc.nextInt(); int b = sc.nextInt(); Syst..
βœ… 문제 두 μ •μˆ˜ A와 Bλ₯Ό μž…λ ₯받은 λ‹€μŒ, A+Bλ₯Ό 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. ​πŸ“₯ μž…λ ₯ 첫째 쀄에 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€μ˜ 개수 Tκ°€ 주어진닀. 각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λŠ” ν•œ μ€„λ‘œ 이루어져 있으며, 각 쀄에 A와 Bκ°€ 주어진닀. (0 < A, B < 10) ​πŸ“₯ 좜λ ₯ 각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λ§ˆλ‹€ "Case #x: A + B = C" ν˜•μ‹μœΌλ‘œ 좜λ ₯ν•œλ‹€. xλŠ” ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€ 번호이고 1λΆ€ν„° μ‹œμž‘ν•˜λ©°, CλŠ” A+B이닀. ​ πŸ’‘ 풀이 μ•žμ„œ ν’€μ–΄λ³Έ 11021번 λ¬Έμ œλž‘ μœ μ‚¬ν•œ λ¬Έμ œμ΄λ‹€. λ‹€λ₯Έ 점은 좜λ ₯ ν˜•μ‹μ΄λ‹€. 11021번 λ¬Έμ œμ—μ„œλŠ” A와 B의 합인 κ²°κ³Όκ°’ C만 λ‹¨λ…μœΌλ‘œ 좜λ ₯ν•΄ μ£Όλ©΄ λ˜λŠ”λ° ν•΄λ‹Ή λ¬Έμ œμ—μ„œλŠ” A + B = C ν˜•μ‹μœΌλ‘œ μ„Έ 값을 λͺ¨λ‘ 좜λ ₯ν•΄ μ£Όμ–΄μ•Ό ν•œλ‹€. [λ°±μ€€] 11021번 : A+B-7 μžλ°” / java βœ… λ¬Έ..
βœ… 문제 μž…λ ₯ν•œ μ‹œκ°„ κΈ°μ€€μœΌλ‘œ 45λΆ„ 전은 λͺ‡μ‹œ λͺ‡ 뢄인지 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨ 짜기 ​πŸ“₯ μž…λ ₯ 첫째 쀄에 두 μ •μˆ˜ H와 M이 주어진닀. (0 ≤ H ≤ 23, 0 ≤ M ≤ 59) 그리고 이것은 ν˜„μž¬ 상근이가 μ„€μ •ν•œ μ•ŒλžŒ μ‹œκ°„ Hμ‹œ M뢄을 μ˜λ―Έν•œλ‹€. ​ μž…λ ₯ μ‹œκ°„μ€ 24μ‹œκ°„ ν‘œν˜„μ„ μ‚¬μš©ν•œλ‹€. 24μ‹œκ°„ ν‘œν˜„μ—μ„œ β€‹ν•˜λ£¨μ˜ μ‹œμž‘μ€ 0:0(μžμ •)이고, 끝은 23:59(λ‹€μŒλ‚  μžμ • 1λΆ„ μ „)이닀. μ‹œκ°„μ„ λ‚˜νƒ€λ‚Ό λ•Œ, λΆˆν•„μš”ν•œ 0은 μ‚¬μš©ν•˜μ§€ μ•ŠλŠ”λ‹€. ​πŸ“₯ 좜λ ₯ 첫째 쀄에 상근이가 창영이의 방법을 μ‚¬μš©ν•  λ•Œ, μ„€μ •ν•΄μ•Ό ν•˜λŠ” μ•ŒλžŒ μ‹œκ°„μ„ 좜λ ₯ν•œλ‹€. ​ πŸ’‘ 풀이 ​Scanner 둜 μž…λ ₯λ°›μ•„μ„œ μ—°μ‚°ν•˜λŠ” 법과 BufferedReader 둜 μž…λ ₯λ°›μ•„μ„œ μ—°μ‚°ν•˜λŠ” 방법 두 κ°€μ§€λ‘œ 문제λ₯Ό ν•΄κ²°ν•˜μ˜€λ‹€. μ•Œκ³ λ¦¬μ¦˜ 접근법 ​ 1. μž…λ ₯λ°›..
βœ… 문제 μž…λ ₯된 κ°’ κ·ΈλŒ€λ‘œ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨ 짜기 ​πŸ“₯ μž…λ ₯ μž…λ ₯이 주어진닀. μž…λ ₯은 μ΅œλŒ€ 100μ€„λ‘œ 이루어져 있고, μ•ŒνŒŒλ²³ μ†Œλ¬Έμž, λŒ€λ¬Έμž, 곡백, 숫자둜만 이루어져 μžˆλ‹€. 각 쀄은 100κΈ€μžλ₯Ό λ„˜μ§€ μ•ŠμœΌλ©°, 빈 쀄이 μ£Όμ–΄μ§ˆ μˆ˜λ„ 있고, 각 μ€„μ˜ μ•ž 뒀에 곡백이 μžˆμ„ μˆ˜λ„ μžˆλ‹€. ​πŸ“₯ 좜λ ₯ μž…λ ₯ 받은 κ·ΈλŒ€λ‘œ 좜λ ₯ν•œλ‹€. ​ πŸ’‘ 풀이 11718번과 μœ μ‚¬ν•œ 문제둜 띄어쓰기λ₯Ό ν¬ν•¨ν•œ λ¬Έμžμ—΄μ„ μž…λ ₯λ°›μ•„ κ·ΈλŒ€λ‘œ 좜λ ₯ν•΄μ£Όλ©΄ λœλ‹€. μž…λ ₯이 λͺ‡ 쀄 λ“€μ–΄μ˜€λŠ”μ§€ 주어지지 μ•Šμ•˜κΈ° λ•Œλ¬Έμ—, 계속 μž…λ ₯이 λ“€μ–΄μ˜¨λ‹€κ³  κ°€μ •ν•˜κ³  while-loopλ₯Ό μ΄μš©ν•΄ μž…λ ₯을 λ°›κ³ , μž…λ ₯받은 것이 μ—†μœΌλ©΄ loop을 μ’…λ£Œν•΄ μ£Όλ©΄ λœλ‹€. input()κ³Ό sys.stdin.readlines()λ₯Ό μ΄μš©ν•˜μ—¬ 두 κ°€μ§€λ‘œ ν’€μ΄ν–ˆλ‹€. βœ… 1. Buffered..
배열은 일련의 λ™μΌν•œ μœ ν˜•μ˜ 데이터 μš”μ†Œλ₯Ό λ³΄μœ ν•˜λŠ” 데이터 ꡬ쑰이며, μžλ°”μ—μ„œ 맀우 μœ μš©ν•˜κ²Œ μ‚¬μš©λ©λ‹ˆλ‹€. μžλ°”μ—μ„œ 배열을 μƒμ„±ν•˜λŠ” 방법은 μ—¬λŸ¬ 가지가 μžˆμŠ΅λ‹ˆλ‹€. λ‹€μŒμ€ κ°€μž₯ 일반적인 λ°©λ²•λ“€μž…λ‹ˆλ‹€. 1. λ°°μ—΄ μƒμ„±ν•˜κΈ° 1) λ°°μ—΄ λ¦¬ν„°λŸ΄λ‘œ μƒμ„±ν•˜κΈ° 배열을 직접 μ •μ˜ν•˜κ³  값을 ν• λ‹Ήν•˜λŠ” λ°©λ²•μž…λ‹ˆλ‹€. int[] numbers = {1, 2, 3, 4, 5}; String[] names = {"John", "Doe", "Alice"}; 2) new ν‚€μ›Œλ“œλ‘œ μƒμ„±ν•˜κΈ° new ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ 배열을 λ™μ μœΌλ‘œ 생성할 수 μžˆμŠ΅λ‹ˆλ‹€. int[] numbers = new int[5]; // 크기가 5인 μ •μˆ˜ λ°°μ—΄ 생성 String[] names = new String[3]; // 크기가 3인 λ¬Έμžμ—΄ λ°°μ—΄ 생성 3) λ°°μ—΄μ˜ ..
DAIN_CHOI
'Java' νƒœκ·Έμ˜ κΈ€ λͺ©λ‘