접근자 반환형 메서드이름 매개변수
//접근자 반환형 메서드이름 매개변수
public void getInfo() { // 메서드 선언
System.out.println("i = " + i); // 메서드 정의
}
반환형
메서드 호출
클래스명.메서드이름()
// ChildClass 생성
package testPjt;
public class ChildClass {
// 클래스의 속성들 정의
public String name;
public String gender;
public int age;
ChildClass() {
System.out.println("--ChildClass Constructor--");
}
public void getInfo() { // 메서드 선언
// 이하 메서드 정의부, 실제 함수의 내용
System.out.println("--getInfo() START--");
System.out.println("name :" + name);
System.out.println("gender :" + gender);
System.out.println("age :" + age);
}
}
// MainClass 생성
// 여기서 위에 클래스를 불러오고 메서드를 호출
package testPjt;
public class Main {
public static void main(String[] args) {
// main class 에서 ChildClass의 객체 생성
ChildClass child1 = new ChildClass();
// class의 속성 넣어줌
child1.name = "hong";
child1.gender = "M";
child1.age = 20;
// 해당 클래스의 메서드 호출
child1.getInfo();
}
}
// 위의 ChildClass에 메서드 추가
// 자료형과 변수명
public void setInfo(String n, String g, int a) {
System.out.println("--setInfo() START--");
name = n;
gender = g;
age = a;
}
// 위의 MainClass에서 메서드 호출
child1.setInfo("hong Gil dong", "M", 20);
중복 메서드
같은 이름으로 여러개의 메서드 만들 수 있음
그러나, 매개변수를 차이를 둬서 다른 메서드로 사용할 수 있음
매개변수의 차이
// 이름은 같으나 매개변수에 차이가 있음
public void getInfo() {
System.out.println("--getInfo() 1--");
}
public void getInfo(int x, int y) {
System.out.println("--getInfo() 2--");
System.out.printf("parameter -> x : %d, y : %d\n", x, y);
}
public void getInfo(String s1, String s2) {
System.out.println("--getInfo() 1--");
System.out.printf("parameter -> x : %s, y : %s\n", s1, s2);
}
private
으로 접근자를 만듬 메서드의 경우 외부의 메서드 호출부에서 호출이 불가능public
은 외부에서 호출 가능