[JAVA] κ°μ²΄μ§ν₯
Categories: JAVA-Learn
π κ°μΈμ μΈ κ³΅κ°μΌλ‘ 곡λΆλ₯Ό κΈ°λ‘νκ³ λ³΅μ΅νκΈ° μν΄ μ¬μ©νλ λΈλ‘κ·Έμ
λλ€.
μ ννμ§ μμ μ λ³΄κ° μμ μ μμΌλ μ°Έκ³ λ°λλλ€ :πΈ
[νλ¦° λ΄μ©μ λκΈλ‘ λ¨κ²¨μ£Όμλ©΄ 볡λ°μΌμ€κ±°μμ]
μλ°λ κ°μ²΄μ§ν₯μΈμ΄
κ°μ²΄μ§ν₯μ΄ νμν μ΄μ λ
κ°μ²΄λ₯Ό μΆμν ν΄μ λ§λλ μμ
μ ν΄μΌνλλ°
μ¬κΈ°μ λν λ°λ³΅μμ
μ κ³μ νλ©΄ μ€λ³΅μμ
μ΄ μκΈ°λ―λ‘
μ΄λ₯Ό μ¬νμ©νκ³ μ μ λ
Έλ ₯μΌλ‘ μ½κ² μ½λλ₯Ό λ³κ²½νκΈ° μν¨
μ¦, μμ°μ± ν₯μμΌλ‘ μ΄μ΄μ§κ² λ¨
μ΄λ €μ΄ λ§λ‘ νλ‘κ·Έλλ° μ€κ³μ μΈ‘λ©΄μμ 보면
1) νλ‘κ·Έλ¨ κ°λ° λ° μ μ§ λ³΄μμ λλ λΉμ©κ³Ό μκ°μ μ€μ΄κΈ° μν¨.
2) κ°μ²΄λ₯Ό ν΅ν΄ λ°μ΄ν°λ₯Ό κ΄λ¦¬νμ¬ λ°μ΄ν°λ₯Ό μμ€μμ΄ κ΄λ¦¬νκΈ° μ©μ΄
μ½λμ μ¬μ¬μ©μ±/μ½λκ΄λ¦¬μ©μ΄=μ μ§λ³΄μ/μ λ’°μ± λμ νλ‘κ·Έλλ° κ°λ₯
ν΄λμ€μ κ°μ²΄
- ν΄λμ€ - κ°μ²΄λ₯Ό μμ±νκΈ° μν μ€κ³λλΌκ³ μκ°νκΈ°
- ν΄λμ€ μ μ : κ°μ²΄λ₯Ό μ μν΄ λμ κ²
- ν΄λμ€μ μ©λ : κ°μ²΄λ₯Ό μμ±νλλ° μ¬μ©
- κ°μ²΄ - ν΄λμ€(TVμ€κ³λ)μ μν΄ λ§λ€μ΄μ§ μ ν(TV)
- κ°μ²΄μ μ μ : μ€μ λ‘ μ‘΄μ¬νλ κ² , μ¬λ¬Ό λλ κ°λ
- κ°μ²΄μ μ©λ : κ°μ²΄κ° κ°μ§κ³ μλ κΈ°λ₯κ³Ό μμ±μ λ°λΌ λ€λ¦
- μ νμ κ°μ²΄ : μ± μ,μμ, μλμ°¨, TVμ κ°μ μ¬λ¬Ό
- 무νμ κ°μ²΄ : μν곡μ, νλ‘κ·Έλ¨ μλ¬μ κ°μ λ Όλ¦¬λ κ°λ
νλ‘κ·Έλλ° κ΄μ μμ ν΄λμ€λ λκ°μ§ μ μλ₯Ό λ΄λ¦΄ μ μμ.
- ν΄λμ€ - λ°μ΄ν°μ ν¨μμ κ²°ν©
- λ³μ>λ°°μ΄>ꡬ쑰체>ν΄λμ€ ννλ‘ λ°μ
- λ³μ = νλμ λ°μ΄ν°λ₯Ό μ μ₯ν μ μλ 곡κ°.
- λ°°μ΄ = κ°μ μ’ λ₯μ μ¬λ¬ λ°μ΄ν°λ₯Ό νλμ μ§ν©μΌλ‘ μ μ₯ν μ μλ 곡κ°
- ꡬ쑰체 = μλ‘ κ΄λ ¨λ μ¬λ¬ λ°μ΄ν°λ₯Ό μ’ λ₯μ κ΄κ³μμ΄ νλμ μ§ν©μΌλ‘ μ μ₯ν μ μλ 곡κ°.
- ν΄λμ€ = λ°μ΄ν°μ ν¨μμ κ²°ν©. (ꡬ쑰체+ν¨μ)
-
ν΄λμ€ - μ¬μ©μ μ μ νμ .
νλ‘κ·Έλλ° μΈμ΄μμ μ 곡νλ μλ£ν μΈμ νλ‘κ·Έλλ¨Έκ° μλ‘ κ΄λ ¨λ λ³μλ₯Ό λ¬Άμ΄μ νλμ νμ μΌλ‘ μλ‘ μΆκ°νλ κ²μ μ¬μ©μ μ μ νμ μ΄λΌκ³ ν¨.
κ°μ²΄μ μΈμ€ν΄μ€
- ν΄λμ€μ μΈμ€ν΄μ€ν : ν΄λμ€λ‘λΆν° κ°μ²΄λ₯Ό λ§λλ κ³Όμ
- μΈμ€ν΄μ€: μ΄λ€ ν΄λμ€λ‘λΆν° λ§λ€μ΄μ§ κ°μ²΄
κ°μ²΄μ ꡬμ±μμ
κ°μ²΄λ μμ±κ³Ό κΈ°λ₯, λ μ’ λ₯μ ꡬμ±μμλ‘ μ΄λ£¨μ΄μ§ = κ°μ²΄λ μμ±κ³Ό κΈ°λ₯μ μ§ν©.
ν΄λμ€λ‘λΆν° κ°μ²΄λ₯Ό μμ±νλ©΄, ν΄λμ€μ μ μλ μμ±κ³Ό κΈ°λ₯μ κ°μ§ κ°μ²΄κ° λ§λ€μ΄ μ§λ κ².
- μμ±(Property) : λ©€λ²λ³μ, νΉμ±,νλ,μν
- κΈ°λ₯(function) : λ©μλ, ν¨μ, νμ
μΈμ€ν΄μ€μ μμ±κ³Ό μ¬μ©
1
2
3
4
5
6
7
8
9
ν΄λμ€λͺ
λ³μλͺ
; //μΈμ€ν΄μ€λ₯Ό μ°Έμ‘°νκΈ° ν μ°Έμ‘°λ³μ μ μΈ
Tv t;
μ°Έμ‘°_λ³μλͺ
= new μμ±μ() //μΈμ€ν΄μ€ μμ± ν κ°μ²΄ μ£Όμλ₯Ό μ°Έμ‘°λ³μμ μ μ₯
t = new Tv();
νλλ‘ μ€μ¬μ μλμ κ°μ΄ μ¬μ© κ°λ₯
Tv t = new Tv();
κ°μ²΄ μμ±μ νμ new κ° λ€μ΄κ°
- μΈμ€ν΄μ€λ μ°Έμ‘°λ³μλ₯Ό ν΅ν΄μλ§ λ€λ£° μ μμΌλ©°, μ°Έμ‘°λ³μμ νμ μ μΈμ€ν΄μ€μ νμ κ³Ό μΌμΉν΄μΌν¨.
λ³μ
λ³μμ μ μΈ μμΉκ° λ³μμ μ’ λ₯μ λ²μλ₯Ό κ²°μ .
- ν΄λμ€ λ³μ
- κ°μ ν΄λμ€μ λͺ¨λ μΈμ€ν΄μ€λ€μ΄ 곡μ νλ λ³μ
- μΈμ€ν΄μ€ μμ± μμ΄ βν΄λμ€μ΄λ¦.ν΄λμ€λ³μλͺ β μΌλ‘ μ κ·Ό
- ν΄λμ€κ° λ‘λ©λ λ μμ±λκ³ νλ‘κ·Έλ¨μ΄ μ’ λ£λ λ μλ©Έ
- static λ³μλ νμν κ²½μ°μλ§ μ νμ μΌλ‘ μ¬μ© =static λ³μλ νλ‘κ·Έλ¨μ μλͺ μ£ΌκΈ° λμ λ©λͺ¨λ¦¬μ μμ£Όνλ―λ‘, λΆνμν λ©λͺ¨λ¦¬ μ¬μ©μ μ΄λν μ μκΈ° λλ¬Έ
- μΈμ€ν΄μ€ λ³μ
- κ° μΈμ€ν΄μ€μ κ°λ³μ μΈ μ μ₯곡κ°. μΈμ€ν΄μ€λ§λ€ λ€λ₯Έ κ° μ μ₯ κ°λ₯
- μΈμ€ν΄μ€ μμ±ν, βμ°Έμ‘°λ³μ.μΈμ€ν΄μ€λ³μλͺ βμΌλ‘ μ κ·Ό
- μΈμ€ν΄μ€λ₯Ό μμ±ν λ μμ±λκ³ μ°Έμ‘°λ³μκ° μμ λλ κ°λΉμ§μ»¬λ ν°μ μν΄ μλ μ κ±°λ¨.
- μ§μλ³μ
- λ©μλ λ΄μ μ μΈλ¨. λ©μλ μ’ λ£μ ν¨κ» μλ©Έ
- 쑰건문, λ°λ³΅λ¬Έμ λΈλ{} λ΄μ μ μΈλ μ§μλ³μλ λΈλμ λ²μ΄λλ©΄ μλ©Έ
- μΈμ€ν΄μ€λ³μλ μΈμ€ν΄μ€κ° μμ±λ λλ§λ€ μμ±λλ―λ‘ μΈμ€ν΄μ€λ§λ€ κ°κΈ° λ€λ₯Έ κ°μ μ μ§ν μ μμ§λ§, ν΄λμ€λ³μλ λͺ¨λ μΈμ€ν΄μ€κ° νλμ μ μ₯곡κ°μ 곡μ νλ―λ‘ νμ 곡ν΅λ κ°μ κ°λλ€.
- μΉ΄λμ 무λ¬λ μ«μλ μΈμ€ν΄μ€λ³μ
- κ°μ μΉ΄λμ νκ³Ό λμ΄λ λͺ¨λ λμΌ - ν΄λμ€ λ³μ
λ©μλ
- μ μ : νΉμ μμ μ μννλ μΌλ ¨μ λ¬Έμ₯μ νλλ‘ λ¬Άμ κ².
-
μ¬μ©μ΄μ
(1) λμ μ¬μ¬μ©μ± -μ¬λ¬ λ² νΈμΆ κ°λ₯, λ€λ₯Έ νλ‘κ·Έλ¨μμλ μ¬μ© κ°λ₯
(2) μ€λ³΅ μ½λ μ κ±° - λ°λ³΅λλ λ¬Έμ₯μ λ¬Άμ΄μ νλμ λ©μλλ‘ λ§λ€λ©΄ λ체 κ°λ₯
(3) νλ‘κ·Έλ¨μ ꡬ쑰ν
-
λ©μλμ μ μΈκ³Ό ꡬν
(1) λ©μλλ μ μΈλΆ / ꡬνλΆλ‘ λλμ΄μ Έ μλ€.
(2) μ μΈλΆ
- λ©μλμ μ΄λ¦κ³Ό λ§€κ°λ³μμ μ μΈ κ·Έλ¦¬κ³ λ°ν νμ μΌλ‘ ꡬμ±
- ex) int add(int x,inty){ }
- λ©μλμ μ΄λ¦ : λ³μμ λͺ λͺ κ·μΉλλ‘ μμ±
- λ°ν νμ μ μ μ΄μΌ νκ³ λ°ν κ°μ΄ μλ κ²½μ° void μμ±
- λ©μλ λ΄μ μ μΈλ λ³μλ€μ μ§μλ³μλΌ ν¨.
(3) ꡬνλΆ
- λ©μλμ μ μΈλΆ λ€μμ μ€λ μ€κ΄νΈ λΆλΆμ ꡬνλΆλΌ ν¨.
- λ©μλκ° μ μ μ’ λ£λλ κ²½μ° λ©μλμ λΈλμ λμ λλ¬νμ λ/λ©μλ λΈλμ μνμ€ returnλ¬Έμ λ§λ¬μλ
- return λ¬Έ : νμ¬ μ€νμ€μΈ λ©μλλ₯Ό μ’ λ£νκ³ νΈμΆν λ©μλλ‘ λμκ°λ€.
- λ°ν κ°μ΄ μμ κ²½μ° returnλ¬Έλ§ μ°κ³ (return;) λ°νκ°μ΄ μμ κ²½μ° return λ€μ λ°νκ°μ μ§μ ν΄ μ£Όμ΄μΌ νλ€.(return λ°νκ°;)
- λ°ννμ μ΄ voidκ° μλ κ²½μ° κ΅¬νλΆ μμ return λ°νκ° μ΄ λ°λμ ν¬ν¨λμ΄μΌν¨.
- returnλ¬Έμ νλμ κ°λ§ λ°ν ν μ μκ³ λ©μλμ λ°ν νμ κ³Ό νμ μ΄ μΌμΉν΄μΌ ν¨.
-
λ©μλμ νΈμΆ
(1) λ©μλλ₯Ό νΈμΆνλ©΄ ꡬνλΆ{}μ λ¬Έμ₯λ€μ΄ μνλ¨.
- μ°Έμ‘°λ³μ.λ©μλμ΄λ¦(κ°1,κ°2,β¦); //λ©μλ νΈμΆ λ°©λ².
- μ°Έμ‘°λ³μ.λ©μλμ΄λ¦(); //λ©μλμ μ μΈλ λ§€κ°λ³μκ° μλ κ²½μ°
[μ¬μ§ μΆμ² - μλ°μ μ μ]
(2) μΈμμ λ§€κ°λ³μ
- μΈμ : λ©μλ νΈμΆμ ( ) κ΄νΈ μμ μ§μ ν΄μ€ κ°
- μΈμμ κ°μμ μμλ νΈμΆλ λ©μλμ μ μΈλ λ§€κ°λ³μμ μΌμΉν΄μΌ ν¨.
(3) λ©μλμ μ€ννλ¦
-
Return문
1) νμ¬ μ€ν μ€μΈ λ©μλλ₯Ό μ’ λ£νκ³ νΈμΆλ λ©μλλ‘ λμκ° λ.
2) λ°νκ°μ μ 무μ κ΄κ³μμ΄ λͺ¨λ λ©μλμλ μ μ΄λ νλμ returnλ¬Έμ΄ μμ΄μΌν¨.
3) return λ¬Έμ μ μ§ μμλ μ»΄νμΌλ¬κ° λ§μ§λ§μ μλμΌλ‘ μΆκ°ν¨.
4) returnλ¬Έμ κ°μλ μ΅μν νλ κ²μ΄ μ’λ€.
JVM λ©λͺ¨λ¦¬κ΅¬μ‘°
- λ©μλ μμ : ν΄λμ€ μ 보μ ν΄λμ€λ³μκ° μ μ₯λλ κ³³
- νΈμΆμ€ν : λ©μλμ μμ
곡κ°, λ©μλκ° νΈμΆλλ©΄ λ©μλ μνμ νμν λ©λͺ¨λ¦¬ 곡κ°μ ν λΉλ°κ³ λ©μλκ° μ’
λ£λλ©΄ μ¬μ©νλ λ©λͺ¨λ¦¬λ₯Ό λ°ννλ€.
- νΈμΆμ€νμ νΉμ§
1) λ©μλκ° νΈμΆλλ©΄ μνμ νμν λ©λͺ¨λ¦¬λ₯Ό μ€νμ ν λΉ λ°λλ€. 2) λ©μλκ° μνμ λ§μΉλ©΄ μ¬μ©νλ λ©λͺ¨λ¦¬λ₯Ό λ°ν 3) νΈμΆμ€νμ μ μΌ μμ μλ λ©μλκ° νμ¬ μ€νμ€μΈ λ©μλ 4) μλμ μλ λ©μλκ° λ°λ‘ μμ λ©μλλ₯Ό νΈμΆν λ©μλ
- νΈμΆμ€νμ νΉμ§
- ν : μΈμ€ν΄μ€κ° μμ±λλ 곡κ°, new μ°μ°μμ μν΄μ μμ±λλ λ°°μ΄κ³Ό κ°μ²΄λ
μ¬κΈ°μ μμ±λ¨.
-
λ©μλμ μμκ³Ό μ’ λ£μ μμλ₯Ό νμΈνλ μμ
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
class CallStackTest{ public static void main (String[]args){ System.out.println("main(String[]args)μ΄ μμλμμ."); firstMethod(); System.out.println("main(String[]args)μ΄ λλ¬μ."); } static void firstMethod(){ System.out.println("firstMethod()μ΄ μμλμμ."); secondMethod(); System.out.println("firstMethod()μ΄ λλ¬μ."); } static void secondMethod(){ System.out.println("secondMethod()μ΄ μμλμμ."); System.out.println("secondMethod()μ΄ λλ¬μ."); -------------------------- κ²°κ³Ό "main(String[]args)μ΄ μμλμμ." "firstMethod()μ΄ μμλμμ." "secondMethod()μ΄ μμλμμ." "secondMethod()μ΄ λλ¬μ." "firstMethod()μ΄ λλ¬μ." "main(String[]args)μ΄ λλ¬μ."
κΈ°λ³Έν λ§€κ°λ³μμ μ°Έμ‘°ν λ§€κ°λ³μ
κΈ°λ³Έν λ§€κ°λ³μ - λ³μκ°μ μ½κΈ°λ§ ν μ μμ (read only)
μ°Έμ‘°ν λ§€κ°λ³μ - λ³μμ κ°μ μ½κ³ λ³κ²½ κ°λ₯ (read & write)
μ¬κ·νΈμΆ
- μ¬κ·νΈμΆμ λ©μλμμ μκΈ°μμ μ λ°λ³΅μ μΌλ‘ νΈμΆνλ κ².
- μ¬κ·νΈμΆμ λ°λ³΅λ¬ΈμΌλ‘ λ°κΏμμκ³ λ°λ³΅λ¬Έ λ³΄λ€ μ±λ₯μ΄ λμ¨
- μ΄ν΄νκΈ° μ½κ³ κ°κ²°ν μ½λλ‘ μμ±κ°λ₯
- μμ) ν©ν 리μΌ/μ κ³±/νΈλ¦¬μ΄ν/ ν΄λλͺ©λ‘νμ
ν΄λμ€ λ§€μλμ μΈμ€ν΄μ€ λ©μλ
μΈμ€ν΄μ€ λ©μλ
- μΈμ€ν΄μ€ μμ± ν βμ°Έμ‘°λ³μ.λ©μλμ΄λ¦()βμΌλ‘ νΈμΆ
- μΈμ€ν΄μ€ λ³μλ μΈμ€ν΄μ€ λ©μλμ κ΄λ ¨λ μμ μ νλ λ©μλ
- λ©μλ λ΄μμ μΈμ€ν΄μ€ λ³μ μ¬μ© κ°λ₯
ν΄λμ€ λ©μλ (static method)
- κ°μ²΄ μμ±μμ΄ βν΄λμ€μ΄λ¦.λ©μλμ΄λ¦()βμΌλ‘ νΈμΆ
- μΈμ€ν΄μ€ λ³μλ μΈμ€ν΄μ€ λ©μλμ κ΄λ ¨μλ μμ μ νλ λ©μλ
- λ©μλ λ΄μμ μΈμ€ν΄μ€λ³μ μ¬μ© λΆκ°
- λ©μλ λ΄μμ μΈμ€ν΄μ€λ³μλ₯Ό μ¬μ©νμ§ μλλ€λ©΄ staticμ λΆμ΄λ κ²μ κ³ λ €
ν΄λμ€ λ©€λ²μ μΈμ€ν΄μ€ λ©€λ²κ°μ μ°Έμ‘°μ νΈμΆ
1) κ°μ ν΄λμ€μ λ©€λ²κ°μλ κ°μ²΄μμ±μ΄λ μ°Έμ‘°λ³μ μμ΄ μ°Έμ‘°ν μ μμ§λ§
2) staticλ©€λ²λ€μ μΈμ€ν΄μ€ λ©€λ²λ€μ μ°Έμ‘°ν μ μμ.
μ€λ²λ‘λ©
- νλμ ν΄λμ€μ κ°μ μ΄λ¦μ λ©μλλ₯Ό μ¬λ¬κ° μ μνλ κ²μ λ©μλ μ€λ²λ‘λ©μ΄λΌ ν¨.
-
μ€λ²λ‘λ©μ 쑰건
(1) λ©μλμ μ΄λ¦μ΄ κ°μμΌ ν¨
(2) λ§€κ°λ³μμ κ°μ λλ νμ μ΄ λ¬λΌμΌ ν¨.
(3) λ§€κ°λ³μλ κ°κ³ 리ν΄(λ°ν)νμ μ΄ λ€λ₯Έ κ²½μ°λ μ€λ²λ‘λ©μ΄ μ±λ¦½λμ§ μμ. - 리ν΄νμ μ μ€λ²λ‘λ©μ ꡬννλλ° μλ¬΄λ° μν₯μ μ£Όμ§ μμ.
-
μμ
(1) System.out.println λ©μλ
λ€μνκ² μ€λ²λ‘λ©λ λ©μλλ₯Ό μ 곡ν¨μΌλ‘μ¨ λͺ¨λ λ³μλ₯Ό μΆλ ₯ν μ μλλ‘ μ€κ³
1 2 3 4 5 6 7 8 9 10
void println() void println(boolean x) void println(char x) void println(char[] x) void println(double x) void println(float x) void println(int x) void println(long x) void println(Object x) void println(String x)
(2) λ§€κ°λ³μμ μ΄λ¦μ΄ λ€λ₯Έ κ²μ μ€λ²λ‘λ©μ΄ μλ,
- int add(int a, int b) {return a+b};
- int add(int x, int y) {return x+y};
(3) 리ν΄νμ μ μ€λ²λ‘λ© μ±λ¦½μ‘°κ±΄μ΄ μλ¨,
- int add(int a, int b){return a+b}
- long add(int a, int b){retrun (long)(a+b);}
(4) λ§€κ°λ³μμ νμ μ΄ λ€λ₯Έ κ²μ μ±λ¦½.
- long add (int a, long b) (return a+b;}
- long add(int a, int b){retrun a+b;}
(5) μ€λ²λ‘λ©μ μ¬λ°λ₯Έ μ
1 2 3 4 5 6 7 8 9 10
//κ°μ μλ―Έμ μμ μ΄ μλ 3νμμ μ§νλκ³ μμ. - μ€λ²λ‘λ© int add (int a, int b){ return a+b ;} long add (long a,long b) {return a+b;} int add(int[]a){ int result=0; for(int i =0; i< a.length; i++}{ result+=a[i]; } return result; }
Comment
λλμ΄ κ°μ²΄μ§ν₯
μμ§μ ν¬κ² μλΏμ§λ μκ³
κ·Έλ₯ κ·Έλ°κ°λ³΄λ€ νλ μ λμ΄λ€..
λ΄κ° μ΄ν΄ν 건 μ½λλ₯Ό μ μ§λ³΄μ νκ³ μ¬μ¬μ©μ±μ λμ΄λ €κ³
λ€λ₯Έ ν΄λμ€λ₯Ό κ°μ Έμμ μ¬μ©νλ κ².
κ·Έκ²μ κ°μ²΄λΌκ³ λΆλ₯΄λ κ²β¦?μΈ κ² κ°λ€
μμ§ κ°μ²΄μ§ν₯μ μμμ΄μ§λ§
λλ체 μΌλ§λ μ΄λ €μΈκΉ κΈ°λκ° λλ€..!
μ°Έκ³ μλ£ - μλ°μ μ μ
Leave a comment