java

17. 메소드-2, 함수와 메소드

dalc3154 2025. 2. 25. 16:26

자바에서는 함수의 개념이 존재하지 않음

모든 함수 체계는 "클래스 내부"에 존재하고 "메소드"로 불림

 

함수: 특정 작업을 수행하는 코드 블록

독립적으로 존재하며 클래스에 소속되어 있지 않다

호출은 함수명(); 으로 하며

주로 Python, JavaScript 등에서 사용한다

 

메소드: 객체의 동작을 정의한 코드 블록

클래스 내부에 포함되며, 객체의 행위와 연결된다

객체 생성후,  . 연산자를 통해 호출한다

주로 Java, C# 등에서 사용한다

 

메소드

특정 작업을 하나로 묶은 것

값들을 입력하면 해당 값들로 작업을 수행하여 결과를 반환한다

메소드는 선언부와 구현부로 나뉘어진다

선언부: 반환타입 메소드명 (매개변수 들)

구현부: {}안의 코드

 

메소드를 '정의한다' >> 선언부와 구현부를 작성한다

 

매개변수(Parameter) 선언

메소드가 작업을 수행하는데 필요한 값들을 제공받음

>> 필요한 개수만큼 선언, 데이터타입 생략 불가능, 경우에 따라 없을수도 있음

 

구현부 : 반환타입이 void가 아닌경우 반드시 "return 반환타입데이터"를 포함해야 한다

반환값은 명시된 반환타입과 일치하거나 자동 형 변환(묵시적 형 변환)이 가능해야 한다

 

public class B_Method {
	public static void main(String[] args) {
		Example example = new Example();
		example.print99dan();
		// 함수의 파라미터에 데이터 전달
		// 함수 호출 시 () 영역 내에서 parameter(매개변수)에 전달되는 값을 argument라고 부름
		
		// 데이터타입 변수 = 실제데이터값;
		int num = 5;
		
		// 매개변수(parameter)와 인자(argument)
		
		// 매개변수: 메소드 정의 시 소괄호 안에 선언되는 '변수'
		// 메소드 호출 시 값을 전달받기 위한 입력변수로 사용
		// 호출 시 전달받은 값은 구현부 내에서 사용
		
		// 인자(인수)
		// 메소드를 호출할 때 소괄호 안에 전달되는 '값'
		// 호출된 메소드의 매개변수에 실제 데이터를 전달
		// 메소드 호출부에서 전달, 매개변수에 저장
		
		// example.add(1);
		// example.add(1, 2, 3);>>>인자값과 매개변수의 수는 같아야 한다
		// example.add("1", "2");>>>인자값과 매개변수의 타입은 같거나 자동 형 변환이 가능해야 한다
		example.add('1', '2'); // 자동 형 변환 가능 char[2]->int[4]
		
		System.out.println(example.add(10, 20));// 30
	}
}

'java' 카테고리의 다른 글

17. 메소드-3 메소드의 종류  (0) 2025.02.25
실습) 사칙연산 클래스 만들기  (0) 2025.02.25
17. 메소드-1  (0) 2025.02.25
16. 참조 자료형  (0) 2025.02.21
실습) 클래스 생성, 호출  (0) 2025.02.21