💡 JAVA에서는 Class 안에 메서드가 있어야 하기에 Class 밖에 함수를 만드는건 문법적으로 불가능하다. (언어마다 다름) JAVA는 반드시 함수를 만들 때 Class 안에서 만들어야한다.
💡 메서드의 기본 문법은 class명.함수명(); 이 기본이지만, 같은 클래스 안에 있는 경우에는 class명을 생략 할 수 있다.
ex)
package ex04;
public class Ex01 {
static void a() {
        System.out.println("안녕하세요");
    }
  
    public static void main(String[] args) {
        a(); // 원래는 Ex01.a(); 인데 Ex01 생략 가능
}1. 기본 메서드
package ex04;
public class Mem01 {
    // 1. 기본 메서드 (함수)
    static void f() {
        System.out.println("기본함수 f()");
    }
    
    public static void main(String[] args) {
        f();
    }
}
2. 인수가 있는 메서드
package ex04;
public class Mem01 {
    // 2. 인수가 있는 메서드 (함수)
    static void g(int x) {
        System.out.println("인수가 있는 함수 g(x) : " x);
    }
    
    public static void main(String[] args) {
        g(10);    
    }
}
3. 인수가 여러개인 메서드
package ex04;
public class Mem01 {
    // 3. 인수가 여러개인 메서드 (함수)
    static void h(int x, int y) {
        System.out.println("인수가 여러개 있는 함수 h(x,y) :" + (x + y));
    }
    
    public static void main(String[] args) {
        h(5, 4);
    }
}
4. 리턴이 있는 메서드
💡 return 타입은 int가 있다면 반드시 return을 반드시 해야함
ex)
static int A () {
	return; // 리턴이 반드시 있어야함
}💡 return 타입과 return 타입은 반드시 일치해야한다.
ex)
static int A () {
	return 5; // 밑줄 친 두 타입이 반드시 일치해야함. (형변환 가능)
}package ex04;
public class Mem01 {
 // 4. 리턴이 있는 메서드 (함수)
    static int mod(int x, int y) {
        return x % y; // 계산하면 int 타입 이기 때문에 가능함
    }
    public static void main(String[] args) {
        int r = mod(10, 3);
        System.out.println("나머지 = " + r);
    }
}
Share article



