신입개발자

메소드 본문

프로그래밍 언어/자바

메소드

dks_a 2022. 5. 8. 18:43
package pk30;

import java.util.Arrays;

class A{
	// 입력 X, 반환 X
	 void method1(){ 
		 System.out.println("메소드1 실행됨");
	 }
	// 입력 O, 반환 X
	 void method2(int i){ 
		 System.out.println("메소드2()이 실행됨, 입력값 = "+ i);
	 }	 
	// 입력 X, 반환 O
	 String method3(){ // 반환값이 있는 메소드는 return필수
		 return "메소드3()이 실행됨"; 
	 }
	// 입력 O, 반환 O
	 int method4(int i, int j){ // 반환값이 있는 메소드는 return필수
		 System.out.println("메소드4()이 실행됨");
		 return i + j; 
	 }
	 
	 //반환이 없어도 return은 사용할 수 있다.
	 void method5(int i) {
		 if (i < 0 || i > 100) {
			 System.out.println("입력 오류");
			 return; // 이때는 값을 반환하면 오히려 에러
		 }
		 System.out.println(i + "점 입니다.");
	 }
	 void method6(int[] a) { // 매개변수가 배열
		 System.out.println(Arrays.toString(a));
	 }
		 
}

public class 메소드 {

	public static void main(String[] args) {
		// 외부클래스 메소드 사용하기 : 클래스 객체 선언필수
		 A a = new A();
		 a.method1(); //메소드1 실행됨 //메소드가 출력
		 a.method2(10); //메소드2()이 실행됨, 입력값 = 10 //메소드가 출력
		
		 System.out.println(a.method3()); //메소드3()이 실행됨 //main이 출력
		 System.out.println(a.method4(10,20));  //메소드4()이 실행됨, 30
		 a.method4(30,40); // 메소드의 반환값을 꼭 사용할 의무는 없다
		 a.method5(90);  //90점 입니다.
		 a.method5(110); //입력 오류
		 
		 // 매개변수를 배열로도 가능
		 // int[] arr = {10, 20, 30};
		 int [] arr;
		 arr = new int[] {10,20,30};
		 a.method6(arr); //[10, 20, 30]
		 // a.method6({40,50,60}); // 에러
		 a.method6(new int[] {40,50,60}); //[40, 50, 60]
		 System.out.println();
		 
		 //내부 메소드 호출하기
		 inMethod();
		 
	}
	// 같은 클래스내의 내부 메소드 선언하기
	// void inMethod() { // 에러, 선언은 할 수 있지만 이 메소드를 내부에서 호출시 에러
	public static void inMethod() { // static 메소드에서 다른 static 메소드만을 호출할 수 있다!!
		System.out.println("내부메소드()가 실행됨");
	}
	
	
}

 

'프로그래밍 언어 > 자바' 카테고리의 다른 글

기본형 호출과 참조형 호출  (0) 2022.05.08
필드와 지역변수  (0) 2022.05.08
클래스와 객체  (0) 2022.05.08
문자열메소드2  (0) 2022.05.08
문자열메소드1  (0) 2022.05.08
Comments