접근자 반환형 메소드 이름(매개변수) {
메소드 정의 부분
}
ex) public(접근자) void(반환형) getInfo(메소드 이름)() {
System.out.println("i="+i); // 메소드 정의
}
메소드도 변수와 같이 선언 및 정의 후 필요시에 호출해서 사용한다.
메소드 호출 방식
ChildClass num1 = new ChildClass( );
num1.ChildClass( );
public void getInfo(int i, boolean , String s) {
...
}
public void getInfo(){
System.out.println("--getInfo - I --");
}
public void getInfo(int x, int y){
System.out.printf("parameter ==> x %d, y : %d\n", x, y);
}
public void getInfo(String s1, String s2){
System.out.printf("parameter ==> s1 : %s, s2 : %s\n", s1, s2);
}
예를들어 클래스 ChildClass 에 private 메소드 mySecret() 을 정의해 놓았을때
public void info(){
System.out.println("color:"+color);
System.out.println("price:"+price);
}
private void mySecret() {
System.out.println("private method - mysSecret");
}
외부에서 아래와 같이 mySecret() 메소드에는 접근할 수 없다.
// main 함수
public class HelloWorld {
public static void main(String[] args) {
ChildClass child1 = new ChildClass()'
child1.getInfo(); // public 메소드는 접근 가능
child1.mySerect(); // Error => private 메소드는 main 함수 같이 외부에서
# 호출이 불가능하다.
}
반면 내부에서는 호출이 아래처럼 가능하다.
public void info(){
System.out.println("color:"+color);
System.out.println("price:"+price);
mySecret() // 클래스 내부인 메소드 info() 에서 private 메소드 mySecret 를 호출함
}
private void mySecret() {
System.out.println("private method - mysSecret");
}