본문 바로가기
Java

[Java] 메소드 오버로딩(Method Overloading)

by eyoo 2022. 7. 1.

두개의 정수를 더해주는 함수들을 만들어보자

 

	int add(int x, int y) {
		return x + y;
	}
	
	float addf(float x, float y){
		return x + y;
	}
	
	double addd(double x, double y){
		return x + y;
	}
		
	String adds(String x, String y){
		return x + y;
	}

# 각기 다른 데이터타입에 따라 여러 이름의 함수들을 만들었다.

 

 

메인 클래스로 함수들을 실행해보자.

 

		// 클래스로 변수만든다 (객체 생성)
		Add a = new Add();
		int result = a.add(3, 5);
		
		System.out.println(result);
		
		// 두개의 float을 더하는 함수를 만들자
		
		float result2 = a.addf(3.6f, 1.9f);
		
		System.out.println(result2);
		
		// 두개의 double을 더하는 함수를 만들자
		double result3 = a.addd(3.8, 2.9);
		
		System.out.println(result3);
		
		// 두개의 String을 더하는 함수를 만들자
		String result4 = a.adds("hello"," Bye");
		
		System.out.println(result4);

	}

 

 

함수의 파라미터의 개수나 리턴 데이터타입이 다르면 함수의 이름을 똑같이 할수있다.
# 이런방법을 메소드 오버로딩(Method Overloading)이라고 한다.

 

메소드 오버로딩을 활용해보자.

 

	int add(int x, int y) {
		return x + y;
	}
	
	float add(float x, float y){
		return x + y;
	}
	
	double add(double x, double y){
		return x + y;
	}
		
	String add(String x, String y){
		return x + y;

 

 

다시 메인 클래스로 돌아와서 함수들을 실행해보자.

 

		Add a = new Add();
		int result = a.add(3, 5);
		
		System.out.println(result);
		
		// 두개의 float을 더하는 함수를 만들자
		
		float result2 = a.add(3.6f, 1.9f);
		
		System.out.println(result2);
		
		// 두개의 double을 더하는 함수를 만들자
		double result3 = a.add(3.8, 2.9);
		
		System.out.println(result3);
		
		// 두개의 String을 더하는 함수를 만들자
		String result4 = a.add("hello"," Bye");
		
		System.out.println(result4);

# add 함수가 다양한 데이터 타입을 처리하고있는것을 볼수있다.

 

 

 

 

 

 

댓글