[Java] 9. Method(함수)

김미숙's avatar
Feb 12, 2025
[Java] 9. Method(함수)
💡
메서드 : 상태는 행위를 통해 변경한다 (객체지향에서) 함수 : 복잡한 로직을 추상적으로 호출하는 법 자바는 함수를 만들 수 있는 문법적인 방법이 없다. 그래서 자바는 메서드를 만들어서 상태변경을 하는 것이 아닌 함수처럼 사용한다.
notion image
 
 
💡
리턴 타입(int)이 있으면 반드시 return이 있어야 한다.
리턴 타입(int)과 리턴 값(5)은 일치해야 한다.
함수가 리턴되면, 그 결과 값으로 식이 변경된다. mod(10,3) → 결과값 1
package ex04; public class Mem01 { // 1. 기본 메서드 (함수) static void f() { System.out.println("기본함수 f()"); } // 2. 인수가 있는 메서드 (함수) _void:리턴x,output이 없음 // x*1/x static void g(int x) { System.out.println("인수가 있는 함수 g(x): " + (x * 1 / x)); } // 3. 인수가 여러개인 메서드 (함수) static void h(int x, int y) { System.out.println("인수가 여러개 있는 함수 h(x,y): " + (x + y)); } // 4. 리턴이 있는 메서드 (함수) _ int와 return은 세트 static int mod(int x, int y) { return x % y; // int와 타입이 일치해야함 } public static void main(String[] args) { f(); // 같은 클래스 안에 있으면 생략가능 g(8); h(5, 4); int r = mod(10, 3); System.out.println("나머지: " + r); } }
C:\workspace\tools\jdk-21\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2024.3.2.1\lib\idea_rt.jar=53364:C:\Program Files\JetBrains\IntelliJ IDEA 2024.3.2.1\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath C:\workspace\java_lec\study\out\production\study ex04.Mem01 기본함수 f() 인수가 있는 함수 g(x): 1 인수가 여러개 있는 함수 h(x,y): 9 나머지: 1 Process finished with exit code 0
 

메서드(계산기)

package ex04; public class Cal01 { static int add(int a, int b) { return a + b; } static int sub(int a, int b) { return a - b; } static int mul(int a, int b) { return a * b; } static int div(int a, int b) { return a / b; } public static void main(String[] args) { // 문제: 5+4 결과*2 결과/3 결과-5 (최종 결과값을 출력하시오) // 1. 더하고 결과 받기 int c = add(5, 4); // 2. 곱하고 결과 받기 int d = mul(9, 2); // 3. 나누고 결과 받기 int e = div(18, 3); // 4. 빼고 결과 받기 int f = sub(6, 5); System.out.println(f); } }
C:\workspace\tools\jdk-21\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2024.3.2.1\lib\idea_rt.jar=53328:C:\Program Files\JetBrains\IntelliJ IDEA 2024.3.2.1\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath C:\workspace\java_lec\study\out\production\study ex04.Cal01 1 Process finished with exit code 0
 
Share article

parangdajavous