6-6ν΄λμ€(ν¨ν€μ§μ μ κ·Ό μ νμ)
ν¨ν€μ§ : ν¨ν€μ§μ 물리μ μΈ ννλ νμΌ μμ€ν μ ν΄λμ΄λ€. ν¨ν€μ§λ λ¨μν νμΌ μμ€ν μ ν΄λ κΈ°λ₯λ§ νλ κ²μ΄ μλλΌ ν΄λμ€μ μΌλΆλΆμΌλ‘, ν΄λμ€λ₯Ό μ μΌνκ² λ§λ€μ΄μ£Όλ μλ³μ μν μ νλ€.
μμν¨ν€μ§.νμν¨ν€μ§.ν΄λμ€
ex)
A ν΄λμ€μ μ 체 μ΄λ¦μ com.mycompany.A
B ν΄λμ€μ μ 체 μ΄λ¦μ com.yourcompany.B
ν¨ν€μ§ μ μΈ : ν΄λμ€λ₯Ό μμ±ν λ ν΄λΉ ν΄λμ€κ° μ΄λ€ ν¨ν€μ§μ μν κ²μΈμ§λ₯Ό μ μΈνλ κ²μ ν¨ν€μ§ μ μΈμ΄λΌκ³ νλ€.
μλ₯Ό λ€μ΄, Car ν΄λμ€κ° com.mycompany ν¨ν€μ§μ μν΄μΌ νλ€λ©΄ λ€μκ³Ό κ°μ΄ Car ν΄λμ€λ₯Ό μμ±ν΄μΌ νλ€.
pakage com.mycompany;
public class Car() {...}
*ν¨ν€μ§λ ν΄λμ€μ μΌλΆμ΄λ€. κ·Έ μ΄μ λ ν΄λμ€λ§ λ°λ‘ 볡μ¬ν΄μ λ€λ₯Έ κ³³μΌλ‘ μ΄λνλ©΄ ν΄λμ€λ₯Ό μ¬μ©ν μ μκΈ° λλ¬Έμ΄λ€.
*ν¨ν€μ§ μ΄λ¦ μμ±μ κ·μΉ
- μ«μλ‘ μμν΄μλ μ λκ³ _, $λ₯Ό μ μΈν νΉμ λ¬Έμλ₯Ό μ¬μ©ν΄μλ μ λλ€.
- javaλ‘ μμνλ ν¨ν€μ§λ μλ° νμ€ APIμμλ§ μ¬μ©νλ―λ‘ μ¬μ©ν΄μλ μ λλ€.
- λͺ¨λ μλ¬Έμλ‘ μμ±νλ κ²μ΄ κ΄λ‘μ΄λ€.
*ν¨ν€μ§ μ΄λ¦μ μ€λ³΅ λ°©μ§ λ°©λ²
νμ¬λ€ κ°μ ν¨ν€μ§κ° μ€λ³΅λμ§ μλλ‘ νν νμ¬μ λλ©μΈ μ΄λ¦μΌλ‘ ν¨ν€μ§λ₯Ό λ§λ λ€. λλ©μΈ λ±λ‘ κΈ°κ΄μμ μ μΌν μ΄λ¦μ΄ λλλ‘ κ²μ¦λμκΈ° λλ¬Έμ λλ©μΈ μ΄λ¦μΌλ‘ ν¨ν€μ§λ₯Ό λ§λ€λ©΄ λ€λ₯Έ νμ¬μ ν¨ν€μ§μ μ€λ³΅λλ κ²½μ°κ° λ°μνμ§ μλλ€.
λλ©μΈ μ΄λ¦ μμμΌλ‘ ν¨ν€μ§ μ΄λ¦μ μ§μ΄μ£Όλλ°, κ·Έ μ΄μ λ ν¬κ΄μ μΈ μμ ν¨ν€μ§κ° λλλ‘ νκΈ° μν¨μ΄λ€. κ·Έλ¦¬κ³ λ§μ§λ§μλ νλ‘μ νΈ μ΄λ¦μ λΆμ¬μ£Όλ κ²μ΄ κ΄λ‘μ΄λ€.
ex)
com.samsung.projectname
com.hyundai.projectname
com.lg.projectname
importλ¬Έ : μ¬μ©νκ³ μ νλ ν΄λμ€ λλ μΈν°νμ΄μ€κ° λ€λ₯Έ ν¨ν€μ§μ μμλμ΄ μλ€λ©΄, importλ¬ΈμΌλ‘ ν΄λΉ ν¨ν€μ§μ ν΄λμ€ λλ μΈν°νμ΄μ€λ₯Ό κ°μ Έμ μ¬μ©ν κ²μμ μ»΄νμΌμκ² μλ €μ€μΌ νλ€.
ex) importλ¬Έμ μμ±νλ λ²
import μμν¨ν€μ§.νμν¨ν€μ§.ν΄λμ€μ΄λ¦;
import μμν¨ν€μ§.νμν¨ν€μ§.*;
*importλ¬Έμ ν¨ν€μ§ μ μΈκ³Ό ν΄λμ€ μ μΈ μ¬μ΄μ μμ±νλ€.
*λ§μ½ μ¬μ©νκ³ μ νλ ν΄λμ€λ€μ΄ λμΌν ν¨ν€μ§ μμμ΄λΌλ©΄ κ°λ³ importλ¬Έμ μμ±νλ κ²λ³΄λ€λ *λ₯Ό μ΄μ©ν΄μ ν΄λΉ ν¨ν€μ§μ μμλ ν΄λμ€λ€μ μ¬μ©ν κ²μμ μλ €μ£Όλ κ²λ μ’μ λ°©λ²μ΄λ€.
*importλ¬Έμ κ°μμ μ νμ΄ μκ³ μΌλ§λ μ§ μΆκ°ν μ μλ€.
*μμ ν¨ν€μ§λ₯Ό importνλ€κ³ ν΄μ νμ ν¨ν€μ§ κΉμ§ importλλ κ²μ μλλΌλ μ μ΄λ€. μλ°λ ν¨ν€μ§ μ 체 μ΄λ¦μΌλ‘ ν¨ν€μ§λ₯Ό μλ³νκΈ° λλ¬Έμ com.hankookκ³Ό com.hankook.projectλ₯Ό μλ‘ λ€λ₯Έ ν¨ν€μ§λ‘ μΈμνλ€.
μ κ·Ό μ νμ : μ κ·Ό μ νμλ λ§ κ·Έλλ‘ μ κ·Όμ μ ννκΈ° μν΄ μ¬μ©λλ€. μ¬κΈ°μ μ κ·Όμ΄λ ν΄λμ€ λ° μΈν°νμ΄μ€ κ·Έλ¦¬κ³ μ΄λ€μ΄ κ°μ§κ³ μλ λ©€λ²μ μ κ·Όμ λ§νλ€.
- public μ κ·Ό μ νμ : λ¨μ΄ λ» κ·Έλλ‘ μΈλΆ ν΄λμ€κ° μμ λ‘κ² μ¬μ©ν μ μλλ‘ νλ€.
- protected μ κ·Ό μ νμ : κ°μ ν¨ν€μ§ λλ μμ ν΄λμ€μμ μ¬μ©ν μ μλλ‘ νλ€.
- private μ κ·Ό μ νμ : λ¨μ΄ λ» κ·Έλλ‘ κ°μΈμ μΈ κ²μ΄λΌ μΈλΆμμ μ¬μ©λ μ μλλ‘ νλ€. -> κ°μ ν¨ν€μ§ λ€λ₯Έ ν΄λμ€μμ x, λ€λ₯Έ ν¨ν€μ§λ λ¬Όλ‘ μ λ¨.
- default μ κ·Ό μ νμ : κ°μ ν¨ν€μ§μ μμλ ν΄λμ€μμλ§ μ¬μ©ν μ μλλ‘ νλ€.
μμ±μμ μ κ·Ό μ ν
κ°μ²΄λ₯Ό μμ±νκΈ° μν΄μλ new μ°μ°μλ‘ μμ±μλ₯Ό νΈμΆνλ€. νμ§λ§ μμ±μλ₯Ό μ΄λμμλ νΈμΆν μ μλ κ²μ μλλ€. μμ±μκ° μ΄λ€ μ κ·Ό μ νμ κ°λλμ λ°λΌ νΈμΆ κ°λ₯ μ¬λΆκ° κ²°μ λλ€.
νλμ λ©μλμ μ κ·Ό μ ν
νλμ λ©μλ€λ₯΄ μ μΈν λ ν΄λΉ νλμ λ©μλλ₯Ό ν΄λμ€ λ΄λΆμμλ§ μ¬μ©ν κ²μΈμ§, ν¨ν€μ§ λ΄μμλ§ μ¬μ©ν κ²μΈμ§, μλλ©΄ λ€λ₯Έ ν¨ν€μ§μμλ μ¬μ©ν μ μλλ‘ ν κ²μΈμ§λ₯Ό κ²°μ ν΄μΌ νλ€. μ΄κ²μ νλμ λ©μλκ° μ΄λ€ μ κ·Ό μ νμ κ°λλμ λ°λΌ κ²°μ λλ€.
*ν΄λμ€ λ΄λΆμΌ κ²½μ° μ κ·Ό μ νμμ μν₯μ λ°μ§ μμ
Getterμ Setter λ©μλ
νλλ μΈλΆμμ μ κ·Όν μ μλλ‘ λ§κ³ λ©μλλ 곡κ°ν΄μ μΈλΆμμ λ©μλλ₯Ό ν΅ν΄ νλμ μ κ·Όνλλ‘ μ λνλ€. νλμ κ°μ μΈλΆλ‘. 리ν΄ν΄μ£Όλ λ©μλλ₯Ό GetterλΌκ³ νκ³ μΈλΆμμ κ°μ λ°μ νλλ₯Ό λ³κ²½νλ λ©μλλ₯Ό SetterλΌκ³ νλ€.
private νμ fieldName;
//Getter
public λ¦¬ν΄ νμ getFieldName(); {
return fieldName;
}
//Setter
public void setFieldName(νμ fieldName) {
this.fieldName = fieldName;
}
*νλ νμ μ΄ booleanμΌ κ²½μ° Getterλ getμΌλ‘ μμνμ§ μκ³ isλ‘ μμνλ κ²μ΄ κ΄λ‘μ΄λ€.
private boolean stop;
//Getter
public boolean isStop() {
return stop;
}
//Setter
public void setStop(boolean stop) {
this.stop = stop;
}