본문 바로가기
프로그래밍/Java-문법정리

【Java문법】메서드

by 코이킹 2022. 1. 9.
반응형

안녕하세요 코이킹입니다.

 

이번 포스트에서는 메서드에 대해서 설명해보겠습니다. 


1. 메서드란?

메서드는 호출하면 특정한 기능을 수행하고 그 결과를 반환하는 코드의 집합으로 수학의 함수와 같은 역할을 합니다. 

 

 

2.  메서드 선언 

메서드는 '[접근지시자] [리턴할 데이터 타입] 메서드명 (매개변수1, 매개변수2...) { 메서드의 코드...}'와 같이 선언합니다. 

 

1) 매개변수 X, 결과 값 반환 X

	public void printHello() {
		System.out.println("Hello!!!");
	}

괄호() 안에 매개변수를 선언하지 않고, 리턴 값이 없으므로 '[리턴할 데이터 타입]'에는 void를 사용합니다. 

 

2) 매개변수 O, 결과 값 반환 X

	public void printString(String str) {
		if (str == null || str.equals("")) {
			/*
			 * 여기에서는 쓰이는 return은 값을 반환한다는 의미가 아니라,
			 * return이후의 메서드내부의 코드가 실행되지 않고, 
			 * 메서드를 호출한곳으로 코드실행의 흐름을 돌린다로 해석.  
			 * */
			return;  
		}
		
		System.out.println(str);
	}

괄호() 안에 매개변수를 선언 하고([데이터 타입] [매개변수명]), '[리턴할 데이터 타입]'에는 void를 사용합니다. 

 

3) 매개변수 X, 결과 값 반환 O 

	public int getRandomNumber() {
		return new Random().nextInt(100)+1;
	}

괄호()안에 매개변수를 선언하지 않고, '[리턴할 데이터 타입]'으로 선언한 데이터 타입의 값을 return키워드를 사용하여, 메서드의 결과 값을 반환합니다.

 

4) 매개변수 O, 결과 값 반환 O 

	public int getRandomNumberFromTo(int from, int to) {
		if (from <= 0 || to <= 0 ) {
			return 0;
		}
		return new Random().nextInt(to)+from;
	}

괄호() 안에 매개변수를 선언 하고([데이터 타입] [매개변수명]),'[리턴할 데이터 타입]'으로 선언한 데이터 타입의 값을 return키워드를 사용하여, 메서드의 결과 값을 반환합니다.

 

 

3. 메서드 호출 

1) 멤버 메서드 

'인스턴스명.메서드명()' 으로 메서드를 호출할 수 있습니다.

※ static으로 선언하지 않은 메서드는 클래스의 인스턴스를 생성해야만 호출이 가능합니다. 

		// 1) 매개변수 X, 결과 값 반환 X
		method.printHello();
		
		// 2) 매개변수 O, 결과 값 반환 X
		method.printString("Bye Bye");
		
		// 3) 매개변수 X, 결과 값 반환 O
		System.out.println(method.getRandomNumber()); // 그대로 출력
		int randomNum = method.getRandomNumber();
		System.out.println(randomNum);
		
		// 4) 매개변수 O, 결과 값 반환 O
		System.out.println(method.getRandomNumberFromTo(5,10)); // 그대로 출력
		int randomNum2 = method.getRandomNumberFromTo(11,30);
		System.out.println(randomNum2);

 

2) 정적(static) 메서드

정적 메서드는 인스턴스를 생성하지 않아도 호출이 가능한 메서드 입니다. 

'클래스명. 메서드명()' 또는 '인스턴스명. 메서드명()'으로 호출할 수 있습니다. 

// 인스턴스 없이도 사용가능
System.out.println(B_08_Method.getHelloWorld());

// 정적 메서드
public static String getHelloWorld() {
    return "Hello World!!";
}

 


※ 예제코드

https://github.com/leeyoungseung/algorithmBasic/blob/master/algorithm/src/basic/B_08_Method.java

 

※ qiita에 투고한 URL

https://qiita.com/Koiking-L/items/fc7be905d15542676de3

반응형

'프로그래밍 > Java-문법정리' 카테고리의 다른 글

【Java문법】래퍼클래스  (0) 2022.01.10
【Java문법】표준입출력  (0) 2022.01.09
【Java문법】배열  (0) 2022.01.09
【Java문법】반복문  (0) 2022.01.09
【Java문법】조건문  (0) 2022.01.09

댓글