[Java] 메소드 만드는 법/접근 제어자/런타임 데이터 영역/"public static"의 의미

소이뎁·2023년 9월 22일
1

Java

목록 보기
9/26
post-thumbnail

📍 메소드 만드는 법

1) 생성 위치

main 메소드 아래에 메소드를 생성한다.

package lesson05;

public class Ex01 {

	public static void main(String[] args) {

	}
	
    // 메소드 만드는 곳
    
}

2) 형식

리턴타입 메소드명(자료형 a, 자료형 b) {
	// 코드 구현...
   	return 결과값;
}

3) 예시

package lesson05;

public class Ex01 {

	public static void main(String[] args) {
		double average = getAverage(80, 75);
		System.out.println("평균은 " + average);
	}
	
	public static double getAverage(int a, int b) {
    	return (a + b) / 2.0;
	}
    
}

📍 접근 제어자

  • private < default < protected < public
  • private: 해당 클래스 안
  • default(No keyword required): 같은 패키지 안
  • protected: 같은 패키지 안 + 다른 패키지의 하위 클래스
  • public: 어디서든

📍 런타임 데이터 영역

1) 종류

이미지 출처

2) 시작, 종료 시점

런타임 데이터 영역시작종료
메소드 영역프로그램(JVM) 시작 전프로그램(JVM) 종료 시
스택 영역메소드 호출 시메소드 종료 시
힙 영역new 연산자 사용 시가비지 컬렉터에 의해 사용 없음이 확인될 시

📍 public static의 의미

어디서든(public), 언제든지(static => 프로그램 실행 내내) 접근할 수 있다.

public static double getAverage(int a, int b) {
    return (a + b) / 2.0;
}

References

🔗 https://www.geeksforgeeks.org/access-modifiers-java/
🔗 https://goldenrabbit.co.kr
🔗 https://inpa.tistory.com

0개의 댓글