Arrays처럼 많이 사용하는 것들은 자바 내에 이미 클래스가 포함되어있다. 또한 클래스는 대문자로 시작한다.

자바에서 메소드(함수)는 별도의 클래스 파일에 만들어 사용한다. 각각의 메소드는 {중괄호}로 구분된다.

명령(command)(괄호)로 내린다.

Arrays.toString(ABC)Arrays 클래스야 .toString 출력 메소드 해줘 (ABC)

 

1. 실행하는 메인 클래스 파일

// Math1 클래스와 그 안에 메소드를 만들어 끌어다 사용하는 것을 학습함.

import java.util.Scanner;

public class lecture2_make_method {
	public static void main(String[] args) {
		
		Scanner s = new Scanner(System.in);
		
		// 메소드는 단독으로 작동하는게 아니고 반드시 클래스와 같이 작동한다. Math1에 만들었다.
		
		Math1 m = new Math1();	// Math1이라는 이름을 가지는 객체변수를 생성.
		m.sumTwoNumber(10, 15);
		
		Math1 mmmm = new Math1();	// 따로 만들어도 되지만 같은 클래스에 있으면 따로 나눌 필요가 없다.
		mmmm.multi3(8);
		
		m.multi3(9);	// 같은 클래스라면 그냥 한 번만 소환하고 이렇게 사용하면 된다.
		
		
		int KKK = m.outputMulti3(70);	// 아웃풋이 있는 메소드
		System.out.println(KKK);
		
		
		// 수업중 실시간 퀴즈
		System.out.println("\n\n-----------------------");
		
		System.out.println("1번째 숫자를 입력해주세요.");
		int num1 = s.nextInt();
		System.out.println("2번째 숫자를 입력해주세요.");
		int num2 = s.nextInt();
		// 1. 값 2개를 1개의 배열로 넘겨서 메소드에서 배열을 분리해서 계산할 수 있음.
		// 2. 값 2개를 문자열로 받아 분리한 다음 숫자로 변환해서 넘겨줘서 계산할 수 있음.
		// 3. 스캐너 자체를 메소드에 넣을 수도 있음.
		
		m.sumTwoNumber(num1, num2);	// 1. 인풋만 있고 아웃풋이 없는 메소드 사용. void 메소드.
		
		System.out.println("합 : " + m.outputTwoNumber(num1, num2));	// 2. 인풋과 아웃풋이 모두 있는 메소드 사용.
		
		
		
	}

}

결과 : 

합 : 25
3배 : 24
3배 : 27
210


-----------------------
1번째 숫자를 입력해주세요.
7
2번째 숫자를 입력해주세요.
4
합 : 11
합 : 11

 

2. 메소드를 보관하는 클래스 파일

public class Math1 {	// Math1 이라는 클래스 안에 여러개의 메소드를 만들었다. 클래스는 대문자로 시작한다.
	
	// 입력 받은 숫자 2개를 합해서 출력해주는 메소드
	public void sumTwoNumber(int number1, int number2) {
		int resultNumber = number1 + number2;
		System.out.println("합 : " + resultNumber);
	}
	
	// 입력 받은 숫자를 3배 해서 출력해주는 메소드
	public static void multi3 (int number1) {	// static : 메모리를 한 번만 할당한다.
		int resultNumber = number1 * 3;
		System.out.println("3배 : " + resultNumber);
	}
	
	

	// void는 아웃풋 파라미터가 없는 메소드다. 이번엔 위와 동일한 메소드를 아웃풋 파라미터가 있는 메소드로 만들어보자.
	public int outputTwoNumber(int number1, int number2) {
		int resultNumber = number1 + number2;
		return resultNumber;
	}

	
	public int outputMulti3(int number1) {
		int resultNumber = number1 * 3;
		return resultNumber;
	}

}

 

패키지 내에 별도의 클래스 파일을 만들어 그곳에 메소드를 만들어두고 끌어다 사용한다. 1번 파일은 소스코드를 작성하는 작업공간이고, 2번 파일은 여러 메소드를 보관하는 클래스 파일이다. 1에서 2를 끌어다 쓰는 것을 구현했다.

 

public { } : 메소드의 기본 구성

public void { } : 아웃풋 파라미터가 없는 메소드

 

+ Recent posts