📕 2. 객체지향 개발
📄 3. Static
1). 클래스 변수 & 인스턴스 변수?
클래스 내에서 멤버변수(클래스에 포함된 변수)는 선언된 위치에 따라 2가지로 구분됨.
- 클래스 변수 : static variable
- 인스턴스 변수 : instance varibale
2). 예시
public class Enemy { static int mEnemyCount = 0; 클래스 변수 string mEnemyName; 인스턴스 변수 public Enemy(string _enemyName){ mEnemyCount++; this.mEnemyName = _enemyName;} } ................................................ static void Main(string[] args) { Enemy 푸에르 = new Enemy("푸에르"); Enemy 에테르누스 = new Enemy("에테르누스"); Enemy 방패르누스 = new Enemy("방패르누스"); > 1. 클래스 변수 사용하기 < int x = Enemy.mEnemyCount; // > 3 > 2. 인스턴스 변수 사용하기 < string 적이름 = 푸에르.mEneyName + 에테르누스.mEneyName + 방패르누스.mEneyName; Console.WriteLine(적이름); // > 푸에르에테르누스방패르누스 }
3). 정의
클래스 변수(static variable)
- Static 키워드를 가진것
- 클래스 영역에 위치한 변수 중에서 static 키워드를 가지는 변수를
클래스 변수(static variable)라고 합니다. - 오직 클래스를통해서 접근가능합니다
인스턴스 변수(instance variable)
- 키워드 없는것 그냥우리가 일반적으로 쓸때
- 변수 중 static 키워드를 가지지 않는 변수는 인스턴스 변수(instance variable)라고 합니다.
- 오직 생성된 인스턴스를통해서 접근 가능합니다.
4). Static은 변수말고도 메소드에서도 사용 가능하다.
'CS > SW 공학' 카테고리의 다른 글
| 니앙팽이 - 객체지향(OOP) | 2-5 | 구조체 (0) | 2023.02.01 |
---|---|
| 니앙팽이 - 객체지향(OOP) | 2-4 | 클래스의 this & 메소드 체이닝 (0) | 2023.02.01 |
| 니앙팽이 - 객체지향(OOP) | 2-2 | 접근한정자 (0) | 2023.02.01 |
| 니앙팽이 - 객체지향(OOP) | 2-1 | Class & Instance (0) | 2023.02.01 |
| 니앙팽이 - 객체지향(OOP) | 1 | 객체지향 프로그래밍 (0) | 2023.01.28 |