Java | λ©μλ(Method)
- -
μ‘°κΈμ΄λΌλ λ κΈ°μ΅νκ³ μ, μ΄λ―Έ μλ κΈμ νλ νλ μμ±νλ©΄μ κΈ°λ‘νλ μ€
μ΄λ² 곡λΆλ..
[μΆμ² : μ ν ν¬ μλ°]
λ©μλ(Method)
νμ΄μ¬(Python)μμλ ν¨μλΌλ μ΄λ¦μΌλ‘ λ°°μ΄ μ μ΄ μλλ° μ¬κΈ°μ λ§νλ λ©μλλ ν΄λμ€λ₯Ό λ λ μ‘΄μ¬νλ κ²μ μμ μ μκΈ° λλ¬Έμ μλ°μ ν¨μλ λ°λ‘ μ‘΄μ¬νμ§ μκ³ ν΄λμ€ λ΄μ μ‘΄μ¬νλ€κ³ λ§νλ€.
μ¦ ν΄λμ€ λ΄μ ν¨μλ₯Ό λ©μλλΌ λΆλ₯Έλ€.
λ©μλλ₯Ό μ μ¬μ©νλκ°?
λκ°μ λ΄μ©μ λ°λ³΅ν΄μ μ κ³ μλ λΉν¨μ¨μ μΈ μμ μ λ°κ²¬ν λ, λΉλ‘μ λ©μλλ₯Ό μ μ¬μ©νλκ°λ₯Ό μ μ μμ κ²μ΄λ€. μ΄λ¬ν λ΄μ©μ νλμ λμΉλ‘ λ¬Άμ΄μ "μ΄λ€ μ λ ₯κ°μ μ£Όμμ λ μ΄λ€ 리ν΄κ°μ λλ €μ€λ€" λΌλ μμ ꡬμ±μΌλ‘ λ§λ€ μ μλ€.
int sum(int a, int b) { // a, bλ 맀κ°λ³μ
return a + b;
}
- sum μ΄λΌλ λ©μλ
- μ λ ₯κ°μΌλ‘ λ κ°μ κ°(int μλ£ν a, int μλ£ν b)
- λ κ°μ μ λ ₯κ°μ λν κ²°κ³Όκ°(int μλ£ν)μ λλ €μ£Όλ λͺ λ Ή(return)
public static void main(String[] args) {
int a = 3;
int b = 4;
Sample sample = new Sample();
int c = sample.sum(a, b);
System.out.println(c); // 7 μΆλ ₯
}
맀κ°λ³μμ μΈμ
- 맀κ°λ³μ : λ©μλμ μ λ ₯μΌλ‘ μ λ¬λ κ°μ λ°λ λ³μ
- μΈμ : λ©μλλ₯Ό νΈμΆν λ μ λ¬νλ μ λ ₯κ°
λ©μλμ μ λ ₯κ°, 리ν΄κ°
λ©μλλ λ€μ΄μ¨ μ λ ₯κ°μ κ°μ§κ³ μ΄λ€ μ²λ¦¬λ₯Ό νμ¬ μ μ ν 리ν΄κ°μ λλ €μ£Όλ λΈλλ°μ€μ κ°λ€
μ λ ₯κ° ---> λ©μλ(λΈλλ°μ€) ----> 리ν΄κ°
λ©μλμ ꡬ쑰
리ν΄μλ£ν λ©μλλͺ
(μ
λ ₯μλ£ν1 맀κ°λ³μ1, μ
λ ₯μλ£ν2 맀κ°λ³μ2, ...) {
...
return 리ν΄κ°; // 리ν΄μλ£νμ΄ void μΈ κ²½μ°μλ return λ¬Έμ΄ νμμλ€.
}
λ©μλμ μ μΆλ ₯ μ 무μ λ°λ₯Έ 4κ°μ§ μ ν
βοΈ Method sample = new Method(); κ³΅ν΅ ν΄λμ€ μ¬μ©
μ λ ₯κ³Ό μΆλ ₯μ΄ λͺ¨λ μλ λ©μλ
public class A2_Method {
// 리ν΄κ°λ°μλ³μ = κ°μ²΄.λ©μλλͺ
(μ
λ ₯μΈμ1, μ
λ ₯μΈμ2, ...)
int sumA(int a, int b) {
return a + b;
}
// μ
λ ₯ κ° - int μλ£ν a, int μλ£ν b
// λ¦¬ν΄ κ° - int μλ£ν
}
μ¬μ© μ
public static void main(String[] args) {
// μ
λ ₯κ³Ό μΆλ ₯μ΄ λͺ¨λ μλ λ©μλ
A2_Method sample = new A2_Method();
int result = sample.sumA(3, 4);
System.out.println(result); // 7 μΆλ ₯
}
μ λ ₯κ³Ό μΆλ ₯μ΄ λͺ¨λ μλ λ©μλ
public class A2_Method {
// 리ν΄κ°λ°μλ³μ = κ°μ²΄.λ©μλλͺ
()
String say() {
return "Hi";
}
// μ
λ ₯ κ° - μμ
// λ¦¬ν΄ κ° - String μλ£ν
}
μ¬μ© μ
public static void main(String[] args) {
String sayA = sample.say();
System.out.println(sayA); // "Hi" μΆλ ₯
}
μ λ ₯μ μκ³ μΆλ ₯μ μλ λ©μλ
public class A2_Method {
// κ°μ²΄.λ©μλλͺ
(μ
λ ₯μΈμ1, μ
λ ₯μΈμ2, ...)
void sumB(int a, int b) {
System.out.println(a + "κ³Ό " + b + "μ ν©μ " + (a + b) + "μ
λλ€.");
}
// μ
λ ₯ κ° - int μλ£ν a, int μλ£ν b
// λ¦¬ν΄ κ° - void (μμ)
}
μ¬μ© μ
public static void main(String[] args) {
// μ
λ ₯μ μκ³ μΆλ ₯μ μλ λ©μλ
sample.sumB(3, 4);
// κ³μ°λ μ
λ ₯κ°μ μ°μ° ν κ²°κ³Όκ°μΌλ‘ λμμ€μ§ μλλ€.
// μλ μΆλ ₯μ print ν¨μλ‘ νμλ κ²μΌ λΏ
}
μ λ ₯μ μκ³ μΆλ ₯μ μλ λ©μλ
public class A2_Method {
// κ°μ²΄.λ©μλλͺ
()
void sayC() {
System.out.println("Hi");
}
// μ
λ ₯ κ° - μμ
// λ¦¬ν΄ κ° - void (μμ)
}
μ¬μ© μ
public static void main(String[] args) {
// μ
λ ₯μ μκ³ μΆλ ₯μ μλ λ©μλ
sample.sayC();
}
returnμ λ λ€λ₯Έ μ°μμ
public class A2_Method {
// return μ λ€λ₯Έ μ°μ (λ©μλ μ€κ³)
void sayNick(String nick) {
if ("fool".equals(nick)) {
return; // λ§€κ° λ³μμ fool μ΄ ν¬ν¨λλ€λ©΄ return μΌλ‘ λΉ μ Έλμ¨λ€.
}
System.out.println("λμ λ³λͺ
μ " + nick + "μ
λλ€.");
}
}
μ¬μ© μ
public static void main(String[] args) {
// return μ λ€λ₯Έ μ°μ (λ©μλ μ¬μ©)
// νΉλ³ν κ²½μ°κ° νμν λ return μ ν΅ν΄ λ©μλλ₯Ό λΉ μ Έλκ° μ μλ€.
sample.sayNick("angel");
sample.sayNick("fool"); // μΆλ ₯ μλ¨
// μ΄ λ°©λ²μ 리ν΄μλ£νμ΄ voidμΈ λ©μλμλ§ ν΄λΉ
// 리ν΄μλ£νμ΄ λͺ
μλμ΄ μλ λ©μλμμ return λ¬Έλ§ λ¨λ
μΌλ‘ μμ±νλ©΄ μ»΄νμΌ μ€λ₯
}
λ©μλ λ΄μμ μ μΈλ λ³μμ ν¨λ ₯ λ²μ
λ©μλ μμμλ§ μ°μ΄λ λ³μλ₯Ό λ‘컬 λ³μλΌκ³ λΆλ₯Έλ€.
public class A2_Method {
void varTestA(int a) {
a++; // κΈ°λ₯μ νμ§ μμ
}
// μμ© 1
int varTestB(int b) {
b++; // μ¦κ°μν€κ³
return b; // return μΌλ‘ 빼쀬λ€.
}
// μμ© 2 (κ°μ²΄λ₯Ό λκΈ°λ λ°©λ²)
int c; // κ°μ²΄ λ³μ
void varTestC(A2_Method sample) { // Sample ν΄λμ€μ κ°μ²΄λ³μλ‘ μ μΈ
sample.c++;
}
}
μ¬μ© μ
public static void main(String[] args) {
int varA = 1;
sample.varTestA(varA);
System.out.println(varA); // 1 μΆλ ₯
// μΆλ ₯μ΄ μ¦κ°λμ§ μκ³ 1μ΄ λλ μ΄μ
// λ©μλ λ΄μμ μ¬μ©λλ λ³μλ λ©μλ μμμλ§ μ°μ¬μ§λ λ³μμ΄κΈ° λλ¬Έ
// μμ λ©μλμμ μ
λ ₯ μΈμλ₯Ό λ»νλ λ³μ aλ λ©μλ μμμλ§ μ°μ΄λ λ³μμ΄μ§ λ©μλ λ°μ λ³μ aκ° μλ
// μμ© (μΈμκ°μ μ¦κ°μν€κΈ°)
int varB = 1;
varB = sample.varTestB(varB);
System.out.println(varB); // 2 μΆλ ₯
// μμ© 2 (κ°μ²΄λ₯Ό λκΈ°λ λ°©λ²)
sample.c = 1;
sample.varTestC(sample);
System.out.println(sample.c);
}
this νμ©νκΈ°
public class A2_Method {
int d; // κ°μ²΄λ³μ d
void varTestD() {
this.d++;
}
// sample κ°μ²΄λ₯Ό μ΄μ©νμ¬ varTestDλΌλ λ©μλλ₯Ό νΈμΆν κ²½μ° κ΅³μ΄ sample κ°μ²΄λ₯Ό μ λ¬ν νμκ° μλ€
// μλνλ©΄ μ λ¬νμ§ μλλΌλ varTestD λ©μλλ thisλΌλ ν€μλλ₯Ό μ΄μ©νμ¬ κ°μ²΄μ μ κ·Όν μ μκΈ° λλ¬Έ
}
μ¬μ© μ
public static void main(String[] args) {
sample.d = 1;
sample.varTestD();
System.out.println(sample.d); // 2 μΆλ ₯
}
'π» κ³΅λΆ κΈ°λ‘ > β Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
Java | μμ±μ(Constructor) (0) | 2023.01.06 |
---|---|
Java | μμ(Inheritance) (0) | 2023.01.06 |
Java | ν΄λμ€(Class) (0) | 2023.01.06 |
Java | λ¬Έμμ΄(String) (0) | 2023.01.06 |
Java | λ¬Έμ(char) (0) | 2023.01.06 |
λΉμ μ΄ μ’μν λ§ν μ½ν μΈ
μμ€ν κ³΅κ° κ°μ¬ν©λλ€