6.ν΄λμ€(νΌκ³΅μ)[6-1]
6-1 κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°
κ°μ²΄ : 물리μ μΌλ‘ μ‘΄μ¬νκ±°λ μΆμμ μΌλ‘ μκ°ν μ μλ κ² μ€μμ μμ μ μμ±μ κ°μ§κ³ μμΌλ©΄μ μλ³ κ°λ₯ν κ²μ λ§νλ€.
κ°μ²΄λ μμ±κ³Ό λμμΌλ‘ ꡬμ±λμ΄ μλ€. ex) μ¬λμ μ΄λ¦, λμ΄ λ±μ μμ±κ³Ό μλ€, κ±·λ€ λ±μ λμμ΄ μκ³ , μλμ°¨λ μκΉ, λͺ¨λΈλͺ λ±μ μμ±κ³Ό λ¬λ¦°λ€. λ©μΆλ€. λ±μ λμμ΄ μλ€. ==> μλ°μμ μμ±κ³Ό λμμ κ°κ° νλμ λ©μλλΌκ³ νλ€.
κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ° : κ°μ²΄λ₯Ό λ§λ€κ³ μ΄λ₯Ό μ‘°λ¦½ν΄ μμ±λ νλ‘κ·Έλ¨μ λ§λλ κΈ°λ²
λ©μλ : κ°μ²΄λ€ μ¬μ΄μ μνΈμμ© μλ¨, λ€λ₯Έ κ°μ²΄μ κΈ°λ₯μ μ΄μ©νλ κ² = λ©μλ νΈμΆ
λ©μλ νΈμΆ: 리ν΄κ° = μ μκ³μ°κΈ°κ°μ²΄.λ©μλ(λ§€κ°κ°1, λ§€κ°κ°2, ...)
->
int result = Calculator.add(10,20);
κ°μ²΄ κ°μ κ΄κ³ : κ°μ²΄λ κ° λ³μ μΌλ‘ μ¬μ©λ μ μμ§λ§, λλΆλΆ λ€λ₯Έ κ°μ²΄μ κ΄κ³λ₯Ό λ§Ίκ³ μλ€.
1. μ§ν© κ΄κ³ : κ°μ²΄λ νλμ λΆνμ΄κ³ νλλ μμ±νμ ν΄λΉ
2. μ¬μ© κ΄κ³: κ°μ²΄ κ°μ μνΈμμ©μ λ§νλ€.
3. μμ κ΄κ³: μμ(λΆλͺ¨) κ°μ²΄λ₯Ό κΈ°λ°μΌλ‘ νμ(μμ) κ°μ²΄λ₯Ό μμ±νλ κ΄κ³λ₯Ό λ§νλ€.
-> κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°μ λ§λ€κ³ μ νλ μμ±νμΈ κ°μ²΄λ₯Ό λͺ¨λΈλ§νκ³ , μ§λ°₯ κ΄κ³μ μλ λΆν κ°μ²΄μ μ¬μ© κ΄κ³μ μλ κ°μ²΄λ₯Ό νλμ© μ€κ³ν ν, 쑰립νλ λ°©μμΌλ‘ νλ‘κ·Έλ¨μ κ°λ°νλ κΈ°λ².
ν΄λμ€(μ€κ³λ) : κ°μ²΄λ₯Ό μμ±νκΈ° μν νλμ λ©μλκ° μ μλμ΄ μλ€.
μΈμ€ν΄μ€ : ν΄λμ€λ‘λΆν° λ§λ€μ΄μ§ κ°μ²΄λ₯Ό λ§νλ€.
ν΄λμ€ μ μΈ
μ¬μ©νκ³ μ νλ κ°μ²΄λ₯Ό ꡬμνλ€λ©΄ κ·Έ κ°μ²΄μ λν μ΄λ¦μ νλ κ²°μ νκ³ μ΄κ²μ ν΄λμ€ μ΄λ¦μΌλ‘ μ νλ€.
μλ³μ μμ± κ·μΉμ λ€μκ³Ό κ°λ€.
1. νλ μ΄μμ λ¬Έμλ‘ μ΄λ£¨μ΄μ ΈμΌ νλ€.
2. 첫 κΈμμλ μ«μκ° μ¬ μ μλ€.
3.$,_ μΈμ νΉμ λ¬Έμλ μ¬μ©ν μ μλ€.
4.μλ° ν€μλλ μ¬μ©ν μ μλ€.
public class ν΄λμ€ μ΄λ¦ {
}
class Tire{
}
*public μ κ·Ό μ νμλ νμΌ μ΄λ¦κ³Ό λμΌν μ΄λ¦μ ν΄λμ€ μ μΈμλ§ λΆμΌ μ μλ€.
κ°μ²΄ μμ±κ³Ό ν΄λμ€ λ³μ
ν΄λμ€λ₯Ό μ μΈν λ€μ, μ»΄νμΌμ νλ€λ©΄ κ°μ²΄λ₯Ό μμ±ν μ€κ³λκ° λ§λ€μ΄μ§ μ . ν΄λμ€λ‘ λΆν° κ°μ²΄λ₯Ό μμ±νλ €λ©΄ λ€μκ³Ό κ°μ΄ newμ°μ°μ μ¬μ©
new ν΄λμ€();
-> new μ°μ°μλ ν μμμ κ°μ²΄λ₯Ό μμ±μν¨ ν κ°μ²΄μ λ²μ§λ₯Ό 리ν΄νλλ‘ λμ΄ μλ€.
ν΄λμ€ λ³μ = new ν΄λμ€();
-> μ¬κΈ°μ λ³μλ μ€νμμμ μ λ ₯μ΄ λκ³ , κ·Έ μμ ν μμμ κ°μ²΄λ₯Ό μ°Έμ‘°ν κ°μ²΄μ λ²μ§λ₯Ό μ μ₯νλ€.
Studentμ StudentExample ν΄λμ€μ μ©λ
public class StudentExample{
public static void main(String[] args){
Student s1 = new Student();
}
}
---------
public class Student {
}
-> ν΄λμ€λ λ κ°μ§ μ©λκ° μλ€. νλλ λΌμ΄λΈλ¬λ¦¬(API)μ©μ΄κ³ λ€λ₯Έ νλλ μ€νμ©μ΄λ€. λΌμ΄λΈλ¬λ¦¬ ν΄λμ€λ λ€λ₯Έ ν΄λμ€μμ μ΄μ©ν λͺ©μ μΌλ‘ μ€κ³ λκ³ , νλ‘κ·Έλ¨ μ 체μμ μ¬μ©λλ ν΄λμ€κ° 100μ΄λΌλ©΄ 99κ°λ λΌμ΄λΈλ¬λ¦¬ ν΄λμ€μ΄λ€.
μ€ν ν΄λμ€λ νλ‘κ·Έλ¨μ μ€ν μ§μ μ μΈ main() λ©μλλ₯Ό μ 곡νλ μν μ ν©λλ€.
ν΄λμ€μ κ΅¬μ± λ©€λ²
νλ: νλλ κ°κ²μ κ³ μ λ°μ΄ν°, λΆν κ°μ²΄, μν μ 보λ₯Ό μ μ₯νλ κ³³μ΄λ€. μ μΈ ννλ λ³μμ λΉμ·νμ§λ§, νλλ₯Ό λ³μλΌκ³ λΆλ₯΄μ§λ μμ΅λλ€. λ³μλ μμ±μμ λ©μλ λ΄μμλ§ μ¬μ©λκ³ μμ±μμ λ©μλκ° μ€ν μ’ λ£λλ©΄ μλ μλ©Ένλ€. νμ§λ§ νλλ μμ±μμ λ©μλ μ 체μμ μ¬μ©λλ©° κ°μ²΄κ° μλ©Έλμ§ μλ ν κ°μ²΄μ ν¨κ» μ‘΄μ¬νλ€.
μμ±μ: μμ±μλ new μ°μ°μλ‘ νΈμΆλλ νΉλ³ν μ€κ΄νΈ {} λΈλ‘μ΄λ€. μμ±μμ μν μ κ°μ²΄ μμ± μ μ΄κΈ°νλ₯Ό λ΄λΉνλ€. νλλ₯Ό μ΄κΈ°ννκ±°λ λ©μλλ₯Ό νΈμΆν΄μ κ°μ²΄λ₯Ό μ¬μ©ν μ€λΉλ₯Ό νλ€. μμ±μλ λ©μλμ λΉμ·νκ² μκ²Όμ§λ§, ν΄λμ€ μ΄λ¦μΌλ‘ λμ΄ μκ³ λ¦¬ν΄ νμ μ΄ μλ€.
λ©μλ: λ©μλλ κ°μ²΄μ λμμ ν΄λΉνλ μ€κ΄νΈ{} λΈλ‘μ λ§νλ€. μ€κ΄νΈ λΈλ‘μ μ΄λ¦μ κ°μ§κ³ μλλ°, μ΄κ±°μ± λ©μλ μ΄λ¦μ΄λ€. λ©μλλ₯Ό νΈμΆνκ² λλ©΄ μ€κ΄νΈ λΈλ‘μ μλ λͺ¨λ μ½λλ€μ΄ μΌκ΄μ μΌλ‘ μ€νλλ€. μ΄λ λ©μλλ νλλ₯Ό μ½κ³ μμ νλ μν λ νμ§λ§, λ€λ₯Έ κ°μ²΄λ₯Ό μμ±ν΄μ λ€μν κΈ°λ₯μ μννκΈ°λ νλ€. λ©μλλ κ°μ²΄ κ°μ λ°μ΄ν°λ₯Ό μ λ¬νλ μλ¨μ΄λ€. μΈλΆ(νΈμΆν κ³³)λ‘λΆν° λ§€κ° κ°μ λ°μ μ€νμ μ΄μ©νκ³ , μ€ν ν κ²°κ³Ό κ°μ μΈλΆ(νΈμΆν κ³³)λ‘ λ¦¬ν΄ν (λλ € μ€) μλ μλ€.