생성자
final sword = Sword(name: 'fireSword', damage: 5);
final hero = Hero(name: 'user1', hp: 100);
정적 멤버
- 정적 (static) 이란?
클래스 수준의 멤버 변수 및 메서드를 나타냅니다.
잘 와닿지 않기에 레시피와 재료에 비유하자면
- 일반 변수와 메서드:
각 요리사(클래스 인스턴스)가 자신만의 조리법(클래스 메서드)과 재료(인스턴스 변수)를 가지고 있으며 각 요리사가 요리할 때 사용하는 재료는 각자의 것이며, 조리법도 서로 다름
- 정적 변수와 메서드:
하지만 요리사들이 함께 사용하는 특별한 조리법이나 재료가 있다면 이는 각 요리사가 개인적으로 사용하는 것이 아닌 전체 요리 공동체에 속하는 것
class Hero {
static int money = 100;
static void setRandomMoney() {
money = Random().nextInt(100);
}
}
결론적으로 클래스에 귀속되는 것임 인스턴스에 귀속되는 것은 아님