Front-End/Javascript
[javascript] Class vs Object.. 무슨 차이인고?
Hamstar_
2021. 3. 5. 20:39
갑자기 Class와 Object의 재밌는 예시가 생각나서 글을 써본다..그놈의 붕어빵은 이제 그만..
1. Class vs Object
Class와 Object의 차이를 게임으로 비교하자면.. Class는 직업, Object는 유저의 캐릭터라고 볼 수 있다. 좀 더 구체적으로 예를 들면..
LOL에서 우리가 고르는 캐릭터(티모, 말파이트 등등..)들이 클래스고, 소환사의 협곡에 소환된 캐릭터는 오브젝트라고 볼 수 있다.
자 이게 무슨말인고 하니...처음에 시작할 때 캐릭터의 기본 능력치는 똑같지만 각각에 캐릭터에 부여된 UserName과 시간이 지날수록 페이커와 내가고른 캐릭터의 KDA가 달라진다는 말이다.
즉, Class는 무언가를 생성하는 하나의 '틀'이고,
Object는 그 틀(Class)에서 자신만의 고유한 속성을 더해 만들어지는 하나의 '존재'이다.
class Timo {
constructor{userName, skin, spellA, spellB) {
this.userName = userName;
this.skin = skin;
this.spellA = spellA;
this.spellB = spellB;
Kill = 0;
death = 0;
assistance = 0;
}
Q() {
...
}
W() {
...
}
E() {
...
}
R() {
...
}
}
const hamstar = new Timo('hamstar', 'normal', 'Ignite', 'Flash');