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

ν”„λ‘œκ·Έλž˜λ° 곡뢀/Java

(29)
[15일차] μΈν„°νŽ˜μ΄μŠ€(interface) Ex63 ~ Ex65 μΈν„°νŽ˜μ΄μŠ€ ν΄λž˜μŠ€λ“€μ΄ ν•„μˆ˜λ‘œ κ΅¬ν˜„ν•΄μ•Ό ν•˜λŠ” 좔상 μžλ£Œν˜•. 즉 객체의 μ‚¬μš© 방법을 κ°€μ΄λ“œλΌμΈν•˜λŠ” 것. - 멀버 λ³€μˆ˜ μ„ μ–Έ λΆˆκ°€λŠ₯(public static final둜만 멀버 λ³€μˆ˜ μ„ μ–Έ κ°€λŠ₯) - 좔상 λ©”μ†Œλ“œλ₯Ό λ©€λ²„λ‘œ κ°€μ§„λ‹€. - κ΅¬ν˜„ 멀버λ₯Ό κ°€μ§ˆ 수 μ—†λ‹€. > κ΅¬ν˜„λ©€λ²„(λ³€μˆ˜, κ΅¬ν˜„λΆ€λ₯Ό κ°€μ§€λŠ” λ©”μ†Œλ“œ) - μžμ‹ ν΄λž˜μŠ€λŠ” λΆ€λͺ¨ μΈν„°ν΄λž˜μŠ€μ˜ 좔상 λ©”μ†Œλ“œλ₯Ό λͺ¨λ‘ μ˜€λ²„λΌμ΄λ”© ν•΄μ•Όν•œλ‹€. - μΈν„°νŽ˜μ΄μŠ€λŠ” 닀쀑 상속을 μ§€μ›ν•œλ‹€. μΈν„°νŽ˜μ΄μŠ€μ˜ μž‘μ„± interface μΈν„°νŽ˜μ΄μŠ€μ΄λ¦„ { public static final νƒ€μž… μƒμˆ˜μ΄λ¦„ = κ°’; public abstract λ©”μ„œλ“œμ΄λ¦„ (λ§€κ°œλ³€μˆ˜λͺ©λ‘); } **λͺ¨λ“  λ©€λ²„λ³€μˆ˜λŠ” public static final 이어야 ν•˜λ©°, 이λ₯Ό μƒλž΅ν•  수 μžˆλ‹€. **λͺ¨λ“ ..
[15일차] μ°Έμ‘°ν˜• ν˜•λ³‘ν™˜(Casting), instanceof μ—°μ‚°μž Ex59 ~ Ex65 μ°Έμ‘°λ³€μˆ˜μ˜ ν˜•λ³€ν™˜ - 상속 관계에 μžˆλŠ” 클래슀끼리의 ν˜•λ³€ν™˜ κ°€λŠ₯ - A클래슀 > B클래슀 1. μ—…μΊμŠ€νŒ…, Up Casting - μ•”μ‹œμ μΈ ν˜•λ³€ν™˜(ν˜•λ³€ν™˜ μƒλž΅ κ°€λŠ₯) - μžμ‹ 클래슀 > (ν˜•λ³€ν™˜) > λΆ€λͺ¨ 클래슀 - 100% μ•ˆμ „ 2. λ‹€μš΄μΊμŠ€νŒ…, Down Casting - λͺ…μ‹œμ μ΄ ν˜•λ³€ν™˜(ν˜•λ³€ν™˜ μƒλž΅ λΆˆκ°€) - λΆ€λͺ¨ 클래슀 > (ν˜•λ³€ν™˜) > μžμ‹ 클래슀 - 100% λΆˆκ°€λŠ₯ - μ½”λ“œμ˜ μœ μ—°μ„± λΆ€μ—¬ > 팁처럼 μ‚¬μš© 1.μ—…μΊμŠ€νŒ… λΆ€λͺ¨ν΄λž˜μŠ€ = μžμ‹ν΄λž˜μŠ€; Parent p1 = new Parent(); p1.a = 10; p1.b = 20; Child c1 = new Child(); c1.a = 10; c1.b = 20; c1.c = 30; c1.d = 40; Parent p2; Child..
[14일차] 상속(Inheritance), λ©”μ†Œλ“œ μ˜€λ²„λΌμ΄λ”©(Method Overriding), static, super Ex49 ~ Ex58 상속, Inheritance - λΆ€λͺ¨κ°€ κ°€μ§€λŠ” μž¬μ‚°μ„ μžμ‹μ—κ²Œ λ¬Όλ €μ£ΌλŠ” 행동 - λΆ€λͺ¨(클래슀)κ°€ κ°€μ§€λŠ” μž¬μ‚°(멀버 λ³€μˆ˜, 멀버 λ©”μ†Œλ“œ)을 μžμ‹(클래슀)μ—κ²Œ λ¬Όλ €μ£ΌλŠ” 행동 class Parent { public int a; public int b; public void ccc() { System.out.println("ccc"); } } //클래슀 상속(extends Parent) //- Child > μžμ‹ 클래슀 //- Parent > λΆ€λͺ¨ 클래슀 //- λΆ€λͺ¨ν΄λž˜μŠ€(Parent)κ°€ κ°€μ§€λŠ” λͺ¨λ“  멀버λ₯Ό μžμ‹ν΄λž˜μŠ€(Child)μ—κ²Œ λ¬Όλ €μ€€λ‹€. class Child extends Parent { public int d; public int e; public void fff() { Syste..
[13일차] 클래슀(2), μƒμ„±μž Ex47 ~ Ex48 μƒμ„±μž, Constructor + new - 객체의 μƒνƒœ(멀버 λ³€μˆ˜)λ₯Ό μ΄ˆκΈ°ν™”ν•˜λŠ” μ—­ν•  1. λ©”μ†Œλ“œλͺ…이 클래슀λͺ…κ³Ό λ™μΌν•˜λ‹€.(λ°˜λ“œμ‹œ) 2. λ°˜ν™˜ν˜•μ΄ μƒλž΅λ˜μ–΄ μžˆλ‹€. > μƒμ„±μžλΌλŠ” λ©”μ†Œλ“œλŠ” λ°˜ν™˜κ°’μ„ κ°€μ§ˆ 수 μ—†λ‹€. public Cup() { //μƒμ„±μž λ‚΄λΆ€μ—μ„œλŠ” 어떀일? //3. 클래슀 멀버 λ³€μˆ˜λ₯Ό μ΄ˆκΈ°ν™”ν•˜λŠ” μ½”λ“œ κ΅¬ν˜„(μ΅œμ†Œν•œμ˜ 의무) this.color = "yellow"; this.size = 300; } μžλ£Œν˜• 잠쑰(객체)λ³€μˆ˜ = κ°μ²΄μƒμ„±μ—°μ‚°μž μƒμ„±μž; Box box = new Box(); μžλ°”λŠ” κ°œλ°œμžκ°€ μƒμ„±μžλ₯Ό μ„ μ–Έν•˜μ§€ μ•ŠμœΌλ©΄, μžλ™μœΌλ‘œ μ•„λž˜μ˜ μƒμ„±μžλ₯Ό μƒμ„±ν•œλ‹€. (κ°œλ°œμžκ°€ λͺ…μ‹œμ μœΌλ‘œ μƒμ„±μžλ₯Ό 1개 이상 λ§Œλ“€κ²Œ 되면 μ•„λž˜μ˜ κΈ°λ³Έ μƒμ„±μžλŠ” μžλ™μœΌλ‘œ λ§Œλ“€μ–΄μ§€μ§€ μ•ŠλŠ”λ‹€.) κΈ°λ³Έ 생..
[13일차] 더미 데이터(가상 데이터) λ§Œλ“€κΈ° Ex46 학생 정보 - 쀑학ꡐ - 1~3ν•™λ…„ - ν•™λ…„λ‹Ή 5ν•™κΈ‰ - ν•™κΈ‰λ‹Ή 30λͺ… - 이름 - λ‚˜μ΄ - ν•™λ…„ - 반 - 번호 - μ£Όμ†Œ - 450λͺ… Student class public class Student { private String name; private int age; private int grade; private int classNo; private int num; private String address; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) {..
[12일차] 클래슀(Class) Ex38~Ex42 클래슀, Class - μ½”λ“œμ˜ μ§‘ν•© - 같은 λͺ©μ μ„ κ°€μ§€λŠ” μ½”λ“œμ˜ μ§‘ν•© - 데이터 μ§‘ν•© μžλ°” 클래슀 파일(μ†ŒμŠ€ 파일)을 λ§Œλ“œλŠ” κ·œμΉ™ 1. 파일(*.java)의 이름과 public 클래슀의 이름이 λ°˜λ“œμ‹œ 동일해야 ν•œλ‹€. 2. 1개의 νŒŒμΌμ•ˆμ— μ—¬λŸ¬κ°œμ˜ 클래슀λ₯Ό μ •μ˜ν•  수 μžˆλ‹€. > 단, 이 ν΄λž˜μŠ€λ“€ 쀑 public ν‚€μ›Œλ“œλŠ” λ”± 1개의 클래슀만 κ°€μ§ˆ 수 μžˆλ‹€. 3. (κΆŒκ³ μ‚¬ν•­) 1개의 νŒŒμΌμ•ˆμ— 1개 클래슀만 μ„ μ–Έν•œλ‹€. 클래슀 μ„ μ–Έν•˜κΈ° class 클래슀λͺ…(λŒ€λ¬Έμžλ‘œ μ‹œμž‘) { //클래슀 멀버 μ„ μ–Έ //1. 멀버 λ³€μˆ˜ //2. 멀버 λ©”μ†Œλ“œ class User { public String name; public int age; //λ©”μ†Œλ“œ > κ΅¬ν˜„ > κ°œμ„±μžˆλŠ” 행동 > μžμ‹ λ§Œμ΄ κ°€μ§„ 데이터λ₯Ό ν™œμš©ν•΄μ„œ..
[11일차] λ¬Έμžμ—΄ String Ex36 ~ Ex37 λ¬Έμžμ—΄ > 문자의 μ§‘ν•© String > char[] λ¬Έμžμ—΄ μΆ”μΆœ - char charAt(int index) char인 숫자λ₯Ό μ§„μ§œ 숫자둜 λ°”κΎΈκΈ° ('1' > 1) System.out.println('1' - 48); System.out.println('9' - 48); λ¬Έμžμ—΄ 곡백 제거 String trim() -λ¬Έμžμ—΄μ— μ‘΄μž¬ν•˜λŠ” 곡백(Whitespace > 슀페이슀, νƒ­, κ°œν–‰)을 μ œκ±°ν•˜λŠ” λ©”μ†Œλ“œ - λ¬Έμžμ—΄μ˜ μ‹œμž‘κ³Ό 끝에 μžˆλŠ” 곡백을 제거 String txt = " ν•˜λ‚˜ λ‘˜ μ…‹ "; System.out.printf("[%s]\n", txt); System.out.printf("[%s]\n", txt.trim()); String s1 = "μžλ°”"; String s2 = " μžλ°” "..
[10일차] 닀차원 λ°°μ—΄(Array) 1차원 λ°°μ—΄ int[] nums1 = new int[3]; 2차원 λ°°μ—΄ int[][] nums2 = new int[2][3]; //2(ν–‰), 3(μ—΄).. μƒμœ„κ³„μΈ΅λΆ€ν„° ν‘œν˜„ 3차원 λ°°μ—΄ int[][][] nums3 = new int[2][2][3]; //2(λ©΄), 2(ν–‰), 3(μ—΄) λ°°μ—΄ 좜λ ₯ 1차원 탐색 > 단일 forλ¬Έ for (int i=0; i