====== Java Programming Point ======
^ 객체 라이프 사이클 ^
|1. 클래스 정의 |
|2. 객체 참조변수 선언 |
|3. 객체 생성 |
|4. 생성자 호출 |
|5. 주소 할당 |
|6. 객체 사용 |
|7. 객체 소멸 |
public class HelloWorld{
public static void main(String[] args) {
System.out.println("Hello world!");
}
}
===== 자바의 괄호들 =====
자바 프로그래밍은 [[namu>마트료시카]]다.
* 중괄호 { } 속에서 클래스, 변수의 명령들이 실행되고
* 대괄호 [ ] 는 그릇과 같다고 보면 된다고들 한다. 변수, 배열의 데이터들을 담기 위해 마련된다.
* 소괄호 ( ) 안에는 인스턴스의 형식부터 일반적인 수식들이 담긴다.
public(접근권한) class(설계) HelloWorld(내가 만든 클래스 이름 - 대문자로 시작) { { ( [] ); } }
클래스(Class) - 설계도
변수의 유효범위(Variable Scope) - { }\\
{ } 범위 내에서 선언한 변수는 { } 내에서만 유효하다.
**지역변수 <-> 전역변수**
지역변수 - 메소드 내에서만 접근할 수 있는 변수
static void a(){
int b = 10 ;
}
메소드 a에서 변수 b는 a메소드 밖에서는 영향을 주지 않는다.
ex)
public class Example {
public static void a() {
int i = 10;
b();
}
static void b() {
System.out.println(i);
}
public static void main(String[] args) {
a();
}
}
main이 먼저 실행되고 a메소드를 실행
a메소드에서 변수 i = 10을 선언하고 b메소드를 실행
b메소드에서 i를 출력하려고 하지만 i값을 찾을 수가 없어서 오류 발생
(a메소드에서 만든 변수 i는 a메소드에서만 사용이 가능하기 때문)
전역 변수 - 클래스 전역에서 접근할 수 있는 변수
public class Example {
static int i = 20; // 전역변수 : 클래스 전체 범위를 대상으로 선언
public static void a() {
int i = 10;
b();
}
static void b() {
System.out.println(i);
}
public static void main(String[] args) {
a();
}
}
클래스 Example 아래에 i=20이라는 전역 변수를 생성.
i=20은 클래스 Example의 {}안에 있는 모든 곳에 접근할 수 있다.
참고 : https://1016ps.tistory.com/6?category=972251
객체(Object) - 틀
구체적인 객체로 만들어 내는 것 - 인스턴스(Instance)
변수(Variable) - 그릇
배열(Array) - 표
자바의 구성