μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- CSS
- κ±°λμ κ³±
- μ λ€λ¦μ€
- FilterChain
- fibonacci
- java
- 컬λ μ νλ μμν¬
- νμ΄νλ‘κ·Έλλ°
- λ°±μλ
- spring data jpa
- κ³μ°κΈ°λ§λ€κΈ°
- μλ°
- CLIλͺ λ Ήμ΄
- λ°μΌλ¦¬μ½λ©
- Spring Security
- Spring Data JDBC
- λΆνΈμΊ ν
- μ€νλ§
- νκ³
- λ¬Έμμ΄λ€μ§κΈ°
- 그리λ
- Publishing
- λ°±μ€μκ³ λ¦¬μ¦
- κΉνλΈ
- μκ³ λ¦¬μ¦
- μλ£κ΅¬μ‘°
- testing
- μΈν 리μ μ΄
- HTML
- 첫κΈμλλ¬Έμ
Archives
- Today
- Total
λμ λͺ¨μ
013 | Java - Inheritance, Encapsulation λ³Έλ¬Έ
π μ€λμ κ³΅λΆ - 1. μμ
π€ μμ(Inheritance)
λ보기

- κΈ°μ‘΄μ ν΄λμ€λ₯Ό μ¬μ¬μ©νμ¬ μλ‘μ΄ ν΄λμ€λ₯Ό μμ±
- λ¨μΌμμλ§ νμ©
- Javaλ λ¨μΌμμ(νλμ λΆλͺ¨λ§ μμ)λ§ κ°λ₯
- λΉμ€μ΄ λμ ν΄λμ€λ§ μμ, λλ¨Έμ§λ ν¬ν¨κ΄κ³λ‘ ν¨

- μ₯μ : λ€νμ νν κ°λ₯
- νλ‘κ·Έλλ¨Έ == νλ‘κ·Έλλ¨Έ
- νλ‘κ·Έλλ¨Έ == μ¬λ
μμ ꡬν
- ν€μλ: extends
π€ ν¬ν¨κ΄κ³
λ보기
- μμμ²λΌ ν΄λμ€λ₯Ό μ¬μ¬μ©ν μ μλ λ°©λ²
- ν΄λμ€μ λ©€λ²λ‘ μ°Έμ‘°λ³μλ₯Ό μ μΈνλ κ²
- ν΄λμ€μ λ©€λ²λ‘ λ€λ₯Έ ν΄λμ€ νμ μ μ°Έμ‘°λ³μλ₯Ό μ μΈνλ κ²
- ν΄λμ€ κ° κ΄κ³ μ€μ
- μμκ΄κ³: ~λ ~μ΄λ€ ( ~ is a ~ )
- ν¬ν¨κ΄κ³: ~λ ~μ κ°μ§κ³ μλ€ ( ~ has a ~ )
- Point c = new Point();
π€ λ©μλ μ€λ²λΌμ΄λ©
λ보기
- μμν΄λμ€λ‘λΆν° μμλ°μ λ©μλμ λμΌν μ΄λ¦μ λ©μλλ₯Ό μ¬μ μνλ κ²
- 쑰건
- μ μΈλΆμ μμν΄λμ€μ λ©μλμ΄λ¦, λ§€κ°λ³μ, νμ μ΄ μΌμΉ
- μ κ·Όμ μ΄μ λ²μλ μμν΄λμ€μ λ©μλλ³΄λ€ κ°κ±°λ λμ΄μΌν¨
- μμν΄λμ€ λ©μλλ³΄λ€ λ§μ μμΈ μ μΈ λΆκ°
π€ super vs super()
λ보기
super
- μμ ν΄λμ€μ λ©€λ²μ μμ μ λ©€λ²λ₯Ό ꡬλ³νλλ° μ¬μ©
⇒ this, superλ κΈ°λ³Έμ μΌλ‘ κ°μ κ² - μμ
public class Super {
public static void main(String[] args) {
Lower l = new Lower();
l.callNum();
}
}
class Upper {
int count = 20; // super.count
}
class Lower extends Upper {
int count = 15;
void callNum() {
System.out.println("count: " + count);
System.out.println("this.count: " + this.count);
System.out.println("super.count: " + super.count);
}
}
- Upperν΄λμ€μ Upperν΄λμ€λ‘λΆν° μμλ°μ Lowerν΄λμ€μ λ³μλͺ
μ΄ countλ‘ κ°μ
- super μλΆμ΄λ©΄ μ»΄νμΌλ¬λ ν΄λΉ κ°μ²΄κ° μμ μ΄ μν μΈμ€ν΄μ€ κ°μ²΄μ λ©€λ²λ₯Ό λ¨Όμ μ°Έμ‘°
⇒ μ΄ κ²½μ°, λ κ°μ κ°μ μ΄λ¦μ λ³μλ₯Ό ꡬλΆνκΈ° μν λ°©λ²: super
- super μλΆμ΄λ©΄ μ»΄νμΌλ¬λ ν΄λΉ κ°μ²΄κ° μμ μ΄ μν μΈμ€ν΄μ€ κ°μ²΄μ λ©€λ²λ₯Ό λ¨Όμ μ°Έμ‘°
super()
- μμ ν΄λμ€μ μμ±μ νΈμΆ
- μμ±μ μμμλ§ μ¬μ© κ°λ₯
- λͺ¨λ μμ±μμ 첫μ€μλ λ°λμ this() λλ super() μ μΈ
- super()κ° μλ κ²½μ° μ»΄νμΌλ¬κ° μμ±μ 첫μ€μ μλ super()λ₯Ό μ μΈνλλ°,
ν΄λμ€ λ§λ€ λ μλμΌλ‘ κΈ°λ³Έ μμ±μλ₯Ό μμ±νλ κ²μ μ΅κ΄ννλ κ²μ΄ μ’μ
⇒ μμν΄λμ€μ κΈ°λ³Έμμ±μκ° μμΌλ©΄ μλ¬ λ°μ
- super()κ° μλ κ²½μ° μ»΄νμΌλ¬κ° μμ±μ 첫μ€μ μλ super()λ₯Ό μ μΈνλλ°,
- μμ
public class SuperMethod {
public static void main(String[] args) {
Student s = new Student();
}
}
class Human {
Human() {
System.out.println("ν΄λ¨Ό ν΄λμ€ μμ±μ");
}
}
class Student extends Human { // Human ν΄λμ€λ‘λΆν° μμ
Student() {
super(); // Human ν΄λμ€μ μμ±μ νΈμΆ
System.out.println("νμ ν΄λμ€ μμ±μ");
}
}
π€ Object ν΄λμ€
λ보기

Object ν΄λμ€μ μ μλ λ©μλ (μλ μμ)
- μλ° ν΄λμ€ μμκ³μΈ΅λμμ μ΅μμμ μμΉν μμν΄λμ€
- μλ°μ λͺ¨λ ν΄λμ€λ,
- Object ν΄λμ€λ‘λΆν° νμ₯λ¨
- Object ν΄λμ€μ μ μλ 11κ°μ λ©μλλ₯Ό μλ μμλ°μ λ°λ‘ μ μνμ§ μκ³ μ¬μ© κ°λ₯

Object (Java Platform SE 7 )
Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. A subclass overrides the finalize method to dispose of system resources or to perform other cleanup. The general contract of fi
docs.oracle.com
- μμ ν΄λμ€κ° μμΌλ©΄ extends Objectλ₯Ό μλμΌλ‘ μΆκ° ⇒ Object ν΄λμ€ μμλ°λλ‘ ν¨
π μ€λμ κ³΅λΆ - 2. μΊ‘μν
π€ μΊ‘μν(Encapsulation)
λ보기
- νΉμ κ°μ²΄ μμ κ΄λ ¨λ μμ±(data fields)κ³Ό κΈ°λ₯(method)μ νλμ μΊ‘μλ‘ λ§λ€μ΄ λ°μ΄ν°λ₯Ό μΈλΆλ‘λΆν° 보νΈνλ κ²
- λͺ©μ : μ 보 μλ(data hiding)
- λ°μ΄ν° 보νΈ
- λ΄λΆμ μΌλ‘ μ¬μ©λλ λ°μ΄ν°μ λν λΆνμν μΈλΆ λ ΈμΆ λ°©μ§
π€ ν¨ν€μ§(Package)
λ보기
- νΉμ ν λͺ©μ μ 곡μ νλ ν΄λμ€μ μΈν°νμ΄μ€μ λ¬Άμ
- λͺ©μ
- ν΄λμ€λ€μ κ·Έλ£Ή λ¨μλ‘ λ¬Άμ΄ ν¨κ³Όμ μΌλ‘ κ΄λ¦¬
- ν¨ν€μ§λ νλμ λλ ν 리μ΄κ³ , νλμ ν¨ν€μ§μ μν ν΄λμ€λ μΈν°νμ΄μ€ νμΌμ λͺ¨λ ν΄λΉ ν¨ν€μ§μ μν΄μμ
- κ³μΈ΅κ΅¬μ‘° κ° κ΅¬λΆ: . (μ )
- ν¨ν€μ§κ° μλ κ²½μ°: μμ€ μ½λμ 첫째μ€μ λ°λμ ‘package ν¨ν€μ§λͺ
’μΌλ‘ νμ
- ν¨ν€μ§ μ μΈμ΄ μμ λ: μ΄λ¦ μλ ν¨ν€μ§μ μνκ² λ¨
import문
- λ€λ₯Έ ν¨ν€μ§ λ΄μ ν΄λμ€λ₯Ό μ¬μ©νκΈ° μν΄ μ¬μ©
- ν¨ν€μ§ ꡬ문과 ν΄λμ€λ¬Έ μ¬μ΄μ μμ±
import ν¨ν€μ§λͺ
.ν΄λμ€λͺ
;
// or
// *: μ λΆ λ€ ν¬ν¨
import ν¨ν€μ§λͺ
.*;
π€ μ κ·Όμ μ΄μ(Access Modifier)
λ보기
μ μ΄μ(Modifier)
- ν΄λμ€, νλ, λ©μλ, μμ±μ λ±μ λΆκ°μ μΈ μλ―Έλ₯Ό λΆμ¬νλ ν€μλ
- μ’
λ₯
- μ κ·Όμ μ΄μ: public, protected, default, private
- κΈ°νμ μ΄μ: static, final, abstract, …
μ κ·Όμ μ΄μ(Access Modifier)
- ν΄λμ€ μΈλΆλ‘μ λΆνμν λ°μ΄ν° λ ΈμΆ λ°©μ§(data hiding)
- μΈλΆλ‘λΆν° λ°μ΄ν°μ μμλ³κ²½ ν΅μ κ°λ₯
- μ κ·Όμ ν λ²μ
- (λμ) public(μ κ·Ό μ ν μμ) > protected(λμΌ ν¨ν€μ§ + νμν΄λμ€) > default(λμΌ ν¨ν€μ§) > private(λμΌ ν΄λμ€) (μ’μ)
π€ getter / setter
λ보기
- getter: μ€μ ν λ³μ κ°μ μ½μ΄μ€λλ° μ¬μ©
- setter: λ°μ΄ν° κ°μ λ³κ²½ κ°λ₯νκ² ν¨
π μ€λμ μκ° μ‘°κ°λͺ¨μ
- μ€λ λ΄λΉ μμ§λμ΄ λΆμ λ©ν μ λ°μ΄νΈ, μ μ μΌλ‘ μμΉ¨ μ λ μΌλ‘ μμ ν΄νλμ΄ μμλ€. νΉν μ λ μ κ·Έ λλΆμ(?) λ€λ₯Έ μμ§λμ΄ λΆμ κΈ°ν μ°μ£Όλ₯Ό λ€μ μ μμλ€. μκΎΈ μ¬κΈ°μ κΈ°μ κΈ°νκ° λμ€λλ° κΈ°ν κ°μ²΄μ§ν₯μ΄λκ³Έγ γ γ γ γ μ μ§μ§ λ무 μκ²Όλ€π€£π€£π€£ κ·Έλλ μκ°λ³΄λ€ μν΄μ μμΈμλ€ γ ππ»ππ»
- λΆλͺ ν μ€λ λ€μ λ³Έ λ΄μ©μΈλ° μ λΉμΌ νκ²λ κΈ°μ΅μ΄ μλ κΉ..π,,,,......μκ² μ΄..,,,....γ ..μλ λ―Ένμ₯.,,,..πΆπ«οΈπ«
'SEB > TIL' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
015 | Java (0) | 2022.07.13 |
---|---|
014 | Java - Polymorphism, Abstraction (0) | 2022.07.12 |
012 | Java - constructor, inner class (0) | 2022.07.08 |
011 | Java - class, object, field, method, static, overloading (0) | 2022.07.07 |
010 | Java - Array (0) | 2022.07.06 |
Comments