개발/JAVA

[JAVA] 메소드

경주초이 2020. 6. 10. 21:42

보통 다른 언어에는 함수라는 것이 별도로 존재하지만 자바는 클래스를 떠나 존재하는 것은 있을 수 없기에 자바의 함수는 클래스 내에 존재하며 이를 메소드라고 부른다.

 

메소드를 사용하는 이유?

똑같은 내용을 반복하여 사용하는 경우 메소드를 작성하여 사용한다.

public int sum(int a, int b) {
    return a+b;
}

 

메소드의 구조

public 리턴자료형 메소드명(입력자료형1 입력변수1, 입력자료형2 입력변수2, ...) {
    ...    
    return 리턴값;  // 리턴자료형이 void 인 경우에는 return 문이 필요없다.
}


public int sum(int a, int b) {
    return a+b;
}

 

 

return의 또 다른 쓰임새

특별한 경우에 메소드를 빠져나가기를 원할 때 return만 단독으로 써서 메소드를 즉시 빠져나갈 수 있다. 

public void say_nick(String nick) {
    if ("fool".equals(nick)) {
        return;
    }
    System.out.println("나의 별명은 "+nick+" 입니다.");
}

 

객체를 넘기는 방법

public class Test {

    int a;  // 객체변수 a

    public void vartest(Test test) {
        test.a++;
    }

    public static void main(String[] args) {
        Test myTest = new Test();
        myTest.a = 1;
        myTest.vartest(myTest);
        System.out.println(myTest.a);
    }
}