자바

JAVA 자바 메서드 - 메서드 호출,객체 내부에서 호출, 객체 외부에서 호출

알통몬_ 2017. 3. 12. 19:20
반응형


안녕하세요 알통몬입니다.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^

 

메서드 호출

  클래스 내부의 다른 메서드에서 호출할 경우에는 단순한 메서드 이름으로 호출하면 되지만

 클래스 외부에서 호출할 경우 먼저 클래스로부터 객체를 생성한 뒤 

참조 변수를 이용해서 메서드를 호출해야 합니다.


객체 내부에서 호출

 클래스 내부에서 다른 메서드를 호출할 경우에는 다음과 같은 형태로 작성하면 됩니다. 

메서드(매개값, ...);

예를 들어 method2()메서드에서 method1()메서드를 호출하려면

public class ClassName {

       void method1(String s1, int i2){

       }

       void method2(){

          method1("부르곰", 24);

               }

}


메서드가 리턴값이 없거나 있어도 받고 싶지 않을 경우 위와 같이 모두 호출이 가능합니다.

 리턴값이 있는 메서드를 호출하고 리턴값을 받고 싶다면 다음과 같이 변수를 선언하고 대입하면 됩니다.


타입 변수 = 메서드(매개값, ...);

       ↑______|

         리턴값


주의해야 할 점은 변수 타입은 메서드 리턴값과 동일하거나 타입 변환이 될수 있어야 합니다.

ex) int 타입은 double 타입으로 자동 변환되기 때문에 int 리턴값은 double 변수에 대입할 수 있습니다. 

public class ClassName {

        int method1(int x, int y){

            int result = x + y;

          return result;

          }


      void method2(){

        int result1 = method1(10,20);

       double result2 = method1(10,20);

    }

}


객체 외부에서 호출

클래스 참조변수 = new 클래스(매개값,...);


객체가 생성되었다면 참조변수와 도트(.) 연산자를 사용해서 메서드를 호출할 수 있습니다. 

트 연산자는 객체 접근 연산자로 객체가 가지고 있는 필드나, 메서드에 접근할 때 사용됩니다.

참조타입.메서드(매개값,...); //리턴값이 없거나, 있어도 리턴값을 받지 않을 경우

타입 변수 = 참조변수.메서드(매개값,...); // 리턴값이 있고, 리턴값을 받고 싶을 경우


예제)


public class Car {

//필드

int speed;

//생성자

//메소드

int getSpeed() {

return speed;

}

void keyTurnOn() {

System.out.println("키를 돌립니다.");

}

void run() {

for(int i=10; i<=50; i+=10) {

speed = i;

System.out.println("달립니다.(시속:" + speed + "km/h)");

}

}

}

예제2)

public class CarExample {

public static void main(String[] args) {

Car myCar = new Car();

myCar.keyTurnOn();

myCar.run();

int speed = myCar.getSpeed();

System.out.println("현재 속도: " + speed + "km/h");

}

}

알통몬에게 프로틴 충전해주기알통몬에게 프로틴 충전해주기
반응형