Programming/Java

[Java] 메소드

yh_126 2021. 1. 14. 15:37
반응형

메소드는 클래스가 수행 할 수 있는 기능을 정의하는 단위이다.

리턴타입 메소드이름(파라미터 변수1, 파라미터 변수2, ...){
    내용;
}

// 리턴타입에는 메소드를 종료 후 반환할 값의 타입을 입력한다.
// int, long, float, void(리턴할 값이 없을때)
// return 예약어를 통해 값을 반환한다.

//ex)
//메소드 정의
int add(int x, int y){
    return x + y;
}
//메소드 호출
int result = add(1,1);

1. 메소드 오버로딩

    같은 이름의 메소드를 한 클래스에 여러 개 정의 할 수 있는 기능을 의미

// 다음과 같은 규칙이 지켜져야한다.
// 1. 파라미터의 타입이나 개수가 달라야한다.
void methodName(int x);
void methodName(String x);
void methodName(String x, String y);

// 2. 파라미터 변수의 이름은 오버로딩 성립에 영향을 주지 않는다. 
// 다음 코드의 경우 오버로딩이 되지 않는다.
void methodName(String x);
void methodName(String name);

// 3. 리턴타입은 오버로딩 성립에 영향을 주지 않는다.
// 다음의 경우 오버로딩이 되지 않는다.
void methodName(String name);
int methodName(String name);

2. static 메소드와 인스턴스 메소드

    static 메소드 : static 예약어가 지정된 메소드

       - 객체를 생성하지 않아도 클래스 이름으로 바로 호출 할 수 있다.

       - 인스턴스 변수, 메소드를 사용할 수 없다. static 예약어가 붙으면 인스턴스보다 초기화 시점이 빠르기 때문이다.

       - 참조하고자 하면 객체를 생성후, 객체를 통해 참조해야한다.

static void methodName(String name){
    실행문;
}

    인스턴스 메소드 : static 예약어가 지정되지 않은 메소드

       - 반드시 객체를 생성 한 후에 객체를 통해서 메소드 호출한다.

void methodName(String name){
    실행문;
}

 


오정원. (2019). 꼭 알아야 하는 Java Programming. 경기: 혜지원.

책을 보고 공부한 내용에 제가 이해한 바를 기록한 것입니다.
자세한 사항은 해당 교재를 참고하여 주세요 !
반응형