[TIL_JAVA] 메서드

HKS·2020년 12월 22일
0

JAVA객체

목록 보기
3/4

1. 메서드 선언과 호출

메서드는 변수와 같이 선언 및 정의 후 필요시 호출하여 사용

메서드 선언 및 정의

StudentClass
//메서드 선언
public void getInfo() {
	// 메서드 정의
	System.out.println("-- getInfo() --");
}
  • public void getInfo() : 메서드 선언부
    • public : 접근자
    • void : 반환 형
    • getInfo : 메서드 이름. 일반적으로 소문자로 시작
    • () : 매개변수
  • { } : 메서드 정의

메서드 호출

Mainclass
StudentClass student1 = new StudentClass();		
student1.getInfo();

2. 매개변수(Parameter)

메서드를 호출할 때 데이터를 전달할 수 있음
필요시에만 정의됨

StudentClass
package basicGrammar;

public class StudentClass {

	public String name;
	public String gender;
	public int age;
	
	public StudentClass() {
		System.out.println("-- StudentClass Constructor --");
	}
	//매개변수
	public void setInfo(String n, String g, int a) {
		System.out.println("-- setInfo() --");
		
		this.name = n;
		this.gender = g;
		this.age = a;
		
	}
	
	public void getInfo() {
		System.out.println("-- getInfo() --");
		
		System.out.println("name :" + name);
		System.out.println("gender :" + gender);
		System.out.println("age :" + age);
	}
	
}
MainClass
package basicGrammar;

public class MainClass {
	
	public static void main(String[] args) {
    
		StudentClass student2 = new StudentClass();
		student2.setInfo("BBB", "M", 30);
		student2.getInfo();	
	}
}
출력
-- StudentClass Constructor --
-- setInfo() --
-- getInfo() --
name :BBB
gender :M
age :30

3. 중복 메서드 (Overloading)

이름은 같고. 매개변수의 개수 또는 타입이 다른 메서드 생성 가능

public void getInfo() {
	System.out.println("-- getInfo (1) --");
}
public void getInfo(int x, int y) {
	System.out.println("-- getInfo (2) --");
	System.out.println("parameter -> x : %d, y : %d\n", x,y);
}
public void getInfo(String s1, String s2) {
	System.out.println("-- getInfo (3) --");
	System.out.println("parameter -> s1: %s, s2 : %s\n", s1, s2);
}

4. 접근자

메서드를 호출할 때 접근자에 따라 호출이 불가

private void myNum() {
	System.out.println("-- myNum() --");
}
  • 메서드 호출부는 객체의 private 메서드를 호출 할 수 없음
    - public 메서드는 호출 가능
  • 객체 내에서는 private, public 메서드 모두 호출 가능
profile
하루 한 줄이라도

0개의 댓글

관련 채용 정보