- 1 -. java project나 project 로 생성된 프로젝트용 폴더
폴더자체를 생성하여 관리하는 것이 첫째일것이다.
- 2 -. Package
class와 interface 들의 묶음이며 폴더 디렉토리이다.
package 같은 경우에는 바로 클래스 생성하면
default package로써 생성된다.
-.3 - Import 문
같은 패키지에 속하는 클래스들은 아무런 조건 없이 다른 클래스를 사용할 수 있지만, 다른 패키지에 속하는 클래스를 사용하려면 두 가지 방법 중 하나를 선택해야 한다.
1. 패키지와 클래스를 작성해야 한다.
2. import 문을 사용한다.
- import 문은 자바 컴파일러에 코드에서 사용할 클래스의 패키지에 대한 정보를 미리 제공하는 역할을 합니다.
따라서 import 문을 사용하면 다른 패키지에 속한 클래스를 패키지 이름을 제외한 클래스 이름만으로 사용할 수 있게 됩니다.
(출처 : [Java] 자바의 패키지란? - package, import, 클래스패스, -classpath 옵션, CLASSPATH 환경변수, 접근지시자 (tistory.com)
- 4 - 변수

- 4-1 - 메인 변수
클래스의 모든 메소드에서 공유되는 변수입니다
클래스 변수 (static)
- static이 붙은 모든 변수
- 클래스내의 어디서든 사용이 가능하다 :: 공유가 자유롭다
- 인스턴스 없이 바로 사용할 수 있다 :: 클래스이름.클래스변수
- 클래스가 메모리에 로딩될 때 생성되고, 프로그램 종료까지 유지된다
- 어디서 사용하든 해당 변수에 대해서는 전부 공통적인 값을 가지고 있다
- JVM내에 메소드 영역에 생성된다
>> 클래스 멤버(static)은 클래스 멤버만 호출 가능하다
인스턴스 변수
- 클래스로부터 생성된 객체를 인스턴스 변수라 한다.
- 클래스의 인스턴스를 생성할 때 만들어진다
- 클래스 변수와 달리 각각의 변수는 독립적인 공간을 가진다
- JVM내에 힙 영역에 생성된다
>> 인스턴스 멤버는 인스턴스/클래스 멤버 둘다 호출 가능하다
멤버변수 초기화 시기/순서
| 클래스 변수 | 인스턴스 변수 | |
| 초기화 시점 | 클래스가 처음 로딩될 때 단 한번 초기화 | 인스턴스가 생성될 때마다 각 인스턴스별로 초기화 |
| 초기화 순서 | 1. 기본값 2. 명시적 초기화 3. 클래스 초기화 블럭 |
1. 기본값 2. 명시적 초기화 3. 인스턴스 초기화 블럭 4. 생성자 |
출처 : [Java] 변수의 선언위치 (tistory.com)
단순 정리
멤버 변수를 제외한 나머지 변수들은 모두 지역 변수이며,
멤버변수 중 static이 붙은 것은 클래스 변수, 붙지 않은 것은 인스턴스 변수라고 합니다.
출처 : [Java] 클래스 / 인스턴스 / 지역변수 쉽게 이해하기 :: 데니스의 놀이터 (tistory.com)
-4.2 지역변수 (메소드) -
지역변수
- 메소드 내에 선언되어서, 메소드 내에서만 사용이 가능하다
- 메소드가 종료되면 절대 사용할 수 없다
- JVM내에 스택 영역에 생성된다
출처 - [Java] 변수의 선언위치 (tistory.com)
[JAVA] 자바 클래스 변수와 클래스 메소드 ( Static ) (tistory.com)
[JAVA/자바] 메소드(method) 정의(선언 및 호출) : 네이버 블로그 (naver.com)
'Java' 카테고리의 다른 글
| .split (.)을 분리할 때 (코드업 1019번 java) (0) | 2023.03.15 |
|---|---|
| Java 생성자에 대해 공부(링크저장) (0) | 2023.03.07 |
| Sington patton (싱글톤 패턴) (0) | 2023.03.06 |
| java의 메모리구조 (링크저장용) (0) | 2023.02.27 |
| Wrapper class (링크 저장) (0) | 2023.02.27 |