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)호출");
// }
}