Day10~11. 230511~12
메소드
메소드 선언
매개 변수 선언
ex1) 두 수를 더하는 메소드 add()
-> 나눗셈할 매개 변수 2개 필요함.
- 선언된 add()메소드를 호출할 때에는 반드시 2개의 int값을 주어야 함.
=> 메서드의 매개변수의 개수가 일치하지 않으면 에러 발생
=> 메서드의 매개변수의 타입과 일치하지 않으면 에러 발생
ex2)
=> 메서드의 매개변수의 타입과 일치하지 않으면 에러 발생
=> int를 byte로 형변환
매개 변수의 개수를 모를 경우
1) 매개 변수를 배열 타입으로 선언
호출할 때 배열을 넘겨줌으로써 배열의 항목 값들을 모두 전달.
배열의 항목 수는 호출할 때 결정
선언 > int sum1(int[] values){}
호출 >
int[] valuse = {1,2,3};
int result = sum1(values);
int result = sim1(new int[]{1,2,3,4,5});
-> 매개 변수를 배열 타입으로 선언하면 메소드를 호출하기 전에 배열을 생성해야 하는 불편함이 있음.
연습)
선언>
호출>
com1 객체 생성 후
2) 배열을 생성하지 않고 목록만 넘겨주는 방법
선언 > int sum2(int ... values){}
호출 >
int result = sum2(1,2,3);
int result = sum2(1,2,3,4,50;
=> 변수 값 메소드 호출 시 쉼표로 나열
또는
int[] values = {1,2,3};
int result = sum2(values);
int result = sum2(new int[]{1,2,3,4,5});
=> 배열을 직접 매개값으로 사용.
연습)
선언>
호출>
com1 객체 생성 후
메소드 호출
메소드는 클래스 내,외부의 호출에 의해 실행
- 클래스 내부 : 메소드 이름으로 호출
- 클래스 외부 : 클래스로부터 객체를 생성한 뒤, 참조 변수를 이용해 메소드 호출.
객체 외부에서 호출
- 클래스로부터 객체를 생성해야 함.
클래스 참조변수 = new 클래스 (매개값,...);
- 객체가 생성되면 참조 변수와 함께 도트(.) 연산자를 사용해 메소드 호출 가능.
참조변수.메소드(매개값,...); //리턴값이 없거나, 있어도 리턴값을 받지 않는 경우
타입 변수 = 참조변수.메소드(매개값,...); //리턴값이 있고, 리턴값을 받고 싶을 경우
- method의 유형4가지
[접근제한자] [제어자] 리턴유형 메서드명(매개변수리스트){
}
1. 매개변수없고, 리턴없는 method
리턴유형 메서드명(){
}
2. 매개변수없고, 리턴있는 method
리턴유형 메서드명(){
return 표현식;
}
3. 매개변수있고, 리턴없는 method
리턴유형 메서드명(매개변수리스트){
}
4. 매개변수있고, 리턴있는 method
리턴유형 메서드명(매개변수리스트){
return 표현식;
}
'개발 수업 > JAVA' 카테고리의 다른 글
[Java] 클래스/Getter와 Setter 메소드 (0) | 2023.05.12 |
---|---|
[Java] 클래스/접근제한자 (0) | 2023.05.11 |
[Java] 클래스/메소드(Method) (0) | 2023.05.10 |
[Java] 클래스/필드(Field) (0) | 2023.05.10 |
[Java] 클래스/객체 지향 프로그래밍 (0) | 2023.05.10 |