일단 메소드가 뭔지를 알아야 개념을 이해할 테니 메소드를 알아보자.
타 언어에는 함수라는것이 존재한다.
근데 자바는 클래스 바깥에 함수를 만드는 것이 불가능하기 때문에 클래스 안에 함수가 존재한다.
이 함수를 자바에서는 "메소드" 라고 부른다.
이 메소드를 왜 쓰는가?라고 생각하는 사람도 있을 거라 생각한다.
왜 메소드를 쓰냐면 간단하게 똑같은 내용을 반복해서 쓰기 싫어서이다.
그냥 많이 쓰이는 부분을 한 번에 묶어서 더욱 효율적이게 처리하기 위해서이다.
이제 메소드의 구조를 살펴보자.
메소드의 구조는 여러 가지가 있는데,
보편적으로는 이런식이다.
public 리턴자료형 메소드이름(입력자료형 입력변수,입력자료형 입력변수, ...){
...
return 리턴값;
}
참고로 리턴 자료형이 void이면 리턴 값이 필요 없다.
이런 평범한 메소드의 예시를 보자.
public int Plus(int a,int b){
return a+b;
}
입력값 a와 b를 더해주는 메소드이다.
메인에서 사용법은
C c = new C();
int sum = c.Plus(1,2);
이런 식으로 사용하면 된다.
메소드의 타입이 int이기 때문에 sum이 int 가 아니라면 오류가 발생할 거다.
다음은 입력값이 없는 메소드 이다.
public String Saying(){
return "Hello";
}
입력값이 없이 그냥 Hello만 리턴하고 있다.
이런 메소드의 사용법은
C c = new C();
String string = c.Saying();
System.out.println(string)
으로 쓰면 된다.
입력값이 없기 때문에 호출할 때 괄호 안에 입력값을 넣지 않는다.
다음은 리턴 값이 없는 메소드 이다.
public void Sum(int a,int b){
System.out.println(a+"+"+b+"="(a+b));
}
입력은 있지만 리턴 값이 없다.
이렇게 리턴값이 없는 메소드의 경우 리턴 자료형 부분에 void를 적어 넣는다.
사용법은
C c = new C();
c.Sum(1,4);
로 사용하면 Sum에 있는 println문이 작동을 하여
1+4=5라는 문자열이 나오게 될 거다.
다음은 입력값도 리턴 값도 없는 메소드이다.
public void Hello(){
System.out.println("HELLO");
}
보면 알겠지만 입력받는 값도 없고 리턴하는 값도 없다.
이런 메소드는 그냥 호출해주기만 하면 작동한다.
C c = new C();
c.Hello();
이런 식으로
오늘은 메소드에관해 정리해 보았다.
다음에 또 공부한 걸 정리해오겠다.
'언어 공부 > Java' 카테고리의 다른 글
[JAVA] 람다식의 개념과 사용법 (0) | 2021.10.07 |
---|---|
[JAVA] Replace(문자열 치환) 에 대하여 (0) | 2021.10.05 |
객체지향 프로그래밍 (0) | 2021.09.16 |
자바 extends와 implements 에 대해 (0) | 2021.09.07 |
JAVA 클래스의 개념 (0) | 2021.09.01 |