[기획자의 자바공부] 메서드 만드는 방법 #오버로딩 #접근자

 

 

 

안녕하세요. 글 쓰는 그니입니다.

 

오늘은 자바로 메서드 만드는 방법에 대해서 공부한 내용을 요약정리 하는 포스팅을 하고자 합니다. 이와 더불어, 오버로딩과 접근자가 무엇인지에 대해서도 함께 요약정리를 해보도록 하겠습니다. 자바에서 메서드는 어떤 식으로 만들까요? 그리고 어떻게 호출할까요?

 

1. 메서드 만드는 방법

[코드1]

package day2;

public class ChildClass {

	public String name;
	public String gender;
	public int age;
	
	public 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);
	}
	
	public void setInfo(String s, String g, int a) {
		System.out.println("----setInfo() Start----");
		
		name = s;
		gender = g;
		age = a;
	
	}
	
	public void setInfo(String s) {
		System.out.println("----setInfo() Start----");
		
		name = s;
	
	}
}

 

위의 코드를 보면 메서드를 만드는 방법에 대해서 알 수 있어요. 이 코드에서는 getInfo와 setInfo 메서드를 만들었습니다. 정보를 셋팅하는 setInfo와 정보를 갖고와서 출력해주는 getInfo 메서드는 각각 다른 이름을 갖고 있는데요. 각각의 메서드는 아래와 같은 구조를 갖고 있습니다.

 

pulbic[접근자] void[반환형] getInfo [메서드명] (매개변수) 

pulbic[접근자] void[반환형] setInfo [메서드명] (매개변수)

 

 

 

 

2. 메서드 호출하는 방법

[코드2]

package day2;

public class MainClass {

	
	public static void main(String[] args) {
		ChildClass child1 = new ChildClass();
		ChildClass child2 = new ChildClass();
		
		child1.setInfo("글쓰는그니", "Man", 20);
		child2.setInfo("나이비밀인그니");
		
		child1.getInfo();
		child2.getInfo();
	}
}

 

메서드 호출하는 방법은 간단합니다. 루트접근자를 이용하여 객체명.메서드명() 으로 호출하면 됩니다.

 

child1.getInfo();
child2.getInfo();

 

3. 오버로딩 (중복메서드) 

메서드는 똑같은 이름으로 여러개 만들수 있습니다. 다만, 매개변수의 개수 또는 타입이 달라야 만들수 있는데요. 그 예시는 위의 [코드1]과 [코드2]를 보면 확인할 수가 있습니다.

 
[코드1]을 보시면, 두개의 setInfo 를 볼수가 있어요. 하지만 그 안의 매개변수는 각각 다른걸 볼수 있죠? 매개변수의 갯수나 다른 타입이라면 각각의 메서드로 인식합니다. 호출 할때 매개변수의 내용과 갯수에 따라 다른 메서드를 불러옵니다. 이것을 오버로딩, 중복메서드라고 부릅니다.

 

4. 접근자

메서드를 호출할 때 접근자에 따라서 호출이 불가할 수 있습니다.


public = 외부에 공개된 메소드, 외부에서 호출이 가능한 메소드
private = 객체의 내부에서만 자유롭게 사용할 수 있는 메소드

 

 

 


오늘은 자바의 접근자, 오버로딩, 그리고 메서드 만드는 방법과 호출하는 방법에 대해 공부해봤어요.

다음 시간에도 자바 공부 내용을 정리한 요약노트 공유해드릴게요.

감사합니다.

댓글(0)

Designed by JB FACTORY