💡 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