[JAVA] 메소드(method)
- 다른언어에서는 'Function' 이라고 칭한다. 자바에서만 method라한다.
- 업무를 구분하여 작성하기 위해 만든다.
- 중복코드를 최소화 할 수 있다.
- 호출해서 사용한다.- instance method 와 static method로 두가지 있다.
instance method |
static method |
- 객체를 생성하여 사용하는 method - 객체가 가지고 있는 값을 사용하여 일처리 할 때 |
- 객체를 생성하지 않고 사용하는 method - 객체가 가지고 있는 값을 사용하지 않고 처리 |
1. JDK1.5에서 가변인자형(variable Arguments)이 지원
- 다형성(polymorphism) 지원 ( overload,override )
└> 같은 이름의 method를 여러개 만들고 사용
2.작성법
┌> public : 클래스 외부에서 호출 가능
│ protected : 같은 package의 다른 클래스에서 호출가능 ,package가 다르다면 상속
│ 관계의 자식클래스만 호출가능
│ default : 같은 package의 다른 클래스에서 호출가능 ,package가 달라도 호출가능
│ privated : 클래스 내에서만 호출가능
│ final : 객체화없이 method 호출
│ synchronized : Multi Thread에서 method 동시호출을 막을 때
│ static : 객체와 없이 method 호출 , static method
접근지정자 반환형 method(매개변수...){
업무정의...
}
접근지정자 |
반환형 |
public 클래스 외부에서 호출 가능 |
void 반환값 없음 |
protected 같은 package의 다른 클래스에서 호출가능 ,package가 다르다면 상속 관계의 자식클래스만 호출가능 |
기본형 byte,short,int,long,char,float,double |
default 같은 package의 다른 클래스에서 호출가능 ,package가 달라도 호출가능 |
참조형 class, String, array |
privated 클래스 내에서만 호출가능 |
|
final 객체화없이 method 호출 |
|
synchronized Multi Thread에서 method 동시호출을 막을 때 |
|
static 객체와 없이 method 호출 , static method |
|
3. 분기문 return
- 반환형이 void가 아니라면 가장 마지막 줄에 return 을 반드시 기술해야한다.
- method의 반환형이 있을 때 가장 마지막 줄에 기술한다.
형식) return 값; // 값은 반환형과 일치해야한다.
└> 상수,변수 ,연산식
1) 객채화 : 클래스명 객체명 = new 클래스명();
2) 호출 : 객체명.method명();
4. Variable Arguments( 가변인자형 )
- JDK 1.5에서부터 추가
- 매개변수는 하나이지만 값은 여러개를 넣을 수 있다.
- method 내부에서는 배열로 처리된다.
- 일반 파라메터와 같이 사용되면 variable Arguments는 가장 마지막에만 기술된다.
작성법 )
public void test( 데이터형 ... 매개변수명 ){
└> parameter 는 1개인데 값을 여러개 넣을 수 있다.
}
5. 출력 method
System.out.println( 출력문자열+값 ); System.out.print( 출력문자열+값 ); |
- 출력메세지와 값이 혼합되어 사용 |
System.out.format("출력문자열 " , 값); System.out.printf("출력문자열 " , 값); |
- JDK 1.5에서나옴 - Variable Arguments 사용된 method - 출력문자를 사용하여 값을 출력 - 출력 후 줄 변경이 없음 |
1) 출력문자
- 값을 출력하기 위해 printf나 format method에서 사용되는 문자들
출력 값 |
문자 |
사용예 |
정수 |
%d |
%d, 크기설정 : %4d(오른쪽정렬) %-4d(왼쪽정렬) , |
실수 |
%f |
%f, 크기설정(소수점이하 자릿수 설정) : %전체자릿수.실수자릿수 ex) %.2f , %7.2f , %-5.2f |
문자 |
%c |
%c, 크기설정 : %3c, %-2c |
문자열 |
%s |
%s, 크기설정 : %10s, %-6s |
|
|
|
|
|
|
6.method overload/overloading ( 메소드 다형성)
- 다형성 중 하나
- 같은 이름의 method 를 여러개 작성할 수 있는 방법
- 편의성 보장
- 규칙 : 접근지정자, 반환형 method명은 같고 매개변수만 다르게 만든다.