Java 기초 (11) 메소드

코린이서현이·2023년 7월 18일
0

Java

목록 보기
11/46

📕 메소드

  • 클래스 내부에서 선언된 메소드

📖 메소드 정의하기

  (함수반환형) 함수이름 (매개변수) {
      수행문 ;
      return 변수나 리터럴값;
  }

📒 매개 변수

  • 함수의 입력으로 받는 변수이다.
  • 매개변수의 자료형과 이름을 같이 써야한다.

✅ 매개변수 값은 없을 수도 있다. 대신 괄호 ()는 써야함.

📒 반환값

  • return예약어를 통해 값을 반환할 수 있다.
  • 이때 함수반환형은 반환형의 자료값에 따라 써야한다.

✅ 반환값이 없는 경우도 있다. 이때 함수 반환형은 void라고 쓴다.

return 예약어

  1. 값을 반환한다.
  2. 함수를 종료하고 되돌아간다.

1번의 목적으로도 쓰이지만, 함수를 종료하고 싶을때도 쓴다.
return문은 여러 개 존재할 수 있지만 반환되는 값은 return중 하나만 반환이 된다.

🔍함수에서 retrun은 필수적일까?

→ 반환타입이 void가 아닌 경우는 필수적으로 return문이 존재해야 한다.
필수는 아니지만 컴파일러가 자동으로 return문을 추가하는걸 보면 쓰는게 좋을 듯하다.

📖 메소드 호출방법

📒 메소드가 static을 통한 클래스 메소드일때

  • 따로 객체를 생성하지 않고도 사용가능
	클래스명.메소드명();

📒 메소드가 일반 인스턴스 메소드일때

객체 생성시에만 메소드 사용가능

	클래스명 참조변수명 = new 생성자;
    참조변수명.메소드명();

✍️ 예시코드


class Dog {
	
	public void wal () {
		System.out.println("왈왈");
	}
}
public class Method {


	public static void main(String[] args) {
		Dog roaDog = new Dog();
		
		roaDog.wal();

	}

}

👉 실행화면

왈왈

📖 메소드 사용 메모리: 스택메모리

🔍메소드는 어떤 메모리 공간을 사용할까?
😁 답은 스택메모리!!

스택메모리
: 지역변수, 메소드의 매개변수와 같이 잠시 사용되고 필요가 없어지는 데이터가 저장되는 공간

함수가 호출되면 스택(stack)이란 메모리 공간을 사용하고, 함수의 수행이 끝나고 결과값이 반환되면 메모리공간은 사라진다.
👉 함수마다 서로 다른 메모리 공간을 사용하기 때문에 변수의 이름이 같아도 다른 변수이다.

함수 내부에서만 사용되는 변수를 지역변수라고 한다

✍️메소드 구현코드

 class Dog {
	//클래스 메소드 구현
	public void wal () {
         System.out.println("왈왈");
     }
 }
 
 public class Method {
     public static void main(String[] args) {

		Dog roaDog = new Dog();			//클래스 생성
       roaDog.wal();					//클래스 메소드 호출

     }
 }

👉 실행화면

왈왈

📖 main() 함수

  • 클래스 내부에 만들지만 클래스의 메소드는 아니다.
  • java는 제일 먼저 main()를 실행한다.

⚠️ 모든 클래스에 maia( )가 있는 것은 아니다.

profile
24년도까지 프로젝트 두개를 마치고 25년에는 개발 팀장을 할 수 있는 실력이 되자!

0개의 댓글