본문 바로가기

Java/java 기초

오버로딩

public class mainClass {
	public static void main(String[] args) {
		/*
		 * Over Load :  함수(메소드)명은 같고
		 *				인자, 인수(매개변수)의 자료형이나
		 *				인수의 갯수가 다른 함수를 의미한다.(동명2인)
		 * image draw function
		 * 
		 * RGB, RGBA(투명도)
		 * 
		 * imageDraw(int x, int y);
		 * imageDraw(int x, int y, int a);
		 * 
		 * Over Ride -> 상속, 다형성
		 */
		//파라미터의 개수가 같아도 타입이 다르면 오버 로딩이 가능하다.
		func();
		func('a');
		func(1);
		func('a', 1);
		func(1, 'a');
	}
	
	static void func() {
		System.out.println("func()");
	}
	
	static void func(char c) {
		System.out.println("func(char c) 호출");
	}
	
	static void func(int i) {
		System.out.println("func(int i) 호출");
	}
	
	static void func(char c, int i) {
		System.out.println("func(char c, int i)호출");
	}
	
	static void func(int i, char c) {
		System.out.println("func(int i, char c)호출");
	}
	
	
	//에러
	//함수 처리가 된 후에 실행되는 return 이기때문에  return값이 구분의 주체가 되지는 않는다.
	//	static int void func(int i, char c) {
	//		System.out.println("func(int i, char c)호출");
	//		return 1;
//	}
	//가인수 이름만 다른경우에도 불가능하다
//	static void func(int ia, char ca) {
//		System.out.println("func(int i, char c)호출");
//	}
}

'Java > java 기초' 카테고리의 다른 글

파일 읽기  (0) 2019.11.26
파일 생성  (0) 2019.11.26
가변 인수 개념 파악하기  (0) 2019.11.26
예외처리 공부  (0) 2019.11.26
베이스볼 게임 (메소드 분리)  (0) 2019.11.26