본문
[2017.07.21] 02. 클래스 멤버 VS 인스턴스 멤버
컴퓨터/이론: 개발 2017. 7. 24. 09:40
인스턴스의 소유가 아닌 클래스 소유의 멤버가 존재한다는 것
클래스 멤버의 특징
1. 모든 인스턴스에서 같은 값 or 같은 메소드 (모든 인스턴스가 공유하는 변수 or 메소드)
2. 인스턴스를 생성하지 않아도 클래스를 통해 직접 변수 접근 가능
[클래스 변수]
[클래스 메소드]
장점
1. 메모리 절약
클래스 멤버와 인스턴스 멤버사이 관계
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | public class Main { public static void main(String[] args) { Calculator c = new Calculator(); c.static_static(); // O c.static_instance(); // X c.instance_static(); // O c.instance_instance(); // O Calculator.static_static(); // O Calculator.static_instance(); // X Calculator.instance_static(); // X Calculator.instance_instance(); // X } } class Calculator { static int static_var = 1; int instance_var = 2; static void static_static( ) { System.out.println(static_var); } static void static_instance( ) { System.out.println(instance_var); } void instance_instance() { System.out.println(instance_var); } void instance_static() { System.out.println(static_var); } } | cs |
구분 |
가능 여부 |
||
접근 방법 |
From |
To |
|
인스턴스 변수로 |
클래스 메소드 |
클래스 변수 |
O |
인스턴스 변수 |
X |
||
인스턴스 메소드 |
클래스 변수 |
O |
|
인스턴스 변수 |
O |
||
클래스로 |
클래스 메소드 |
클래스 변수 |
O |
인스턴스 변수 |
X |
||
인스턴스 메소드 |
클래스 변수 |
X |
|
인스턴스 변수 |
X |
#클래스 멤버 #인스턴스 멤버 #클래스 변수 #클래스 메소드
'컴퓨터 > 이론: 개발' 카테고리의 다른 글
[2017.08.01] 06. API, UI (0) | 2017.08.01 |
---|---|
[2017.07.30] 05. 자바 컴파일 (0) | 2017.07.30 |
[2017.07.25] 04. 오버라이딩과 오버로딩 (0) | 2017.07.30 |
[2017.07.24] 03. 상속과 생성자 (0) | 2017.07.30 |
JAVA 반복문 제어 (0) | 2017.07.17 |
댓글