객체지향프로그래밍

null·2022년 7월 24일
0

객체지향프로그래밍
코드를 작성하는 방식.. 데이터에 대한 생각, 구조 방식.

const player = {
	name: 'john',
    age: '12'
}

한 명의 플레이어만 있다면 이 것도 충분해. 그런데 플레이어가 늘어나면.. 문제가 생겨
만약 name, age 프로퍼티는 동일하게 있고 데이터는 같아야 하는데 실수할 가능성이 있는 거지.
또 프로퍼티를 추가 하고 싶다면?
하나의 팩토리를 만들어야 해. 이 것이 Class의 개념 = 객체를 위한 팩토리와 같은 것.

클래스는 일종의 구조, 설계도를 만들어줌. 플레이어 객체가 어떻게 보여야 하는지에 대해 도면을 정의 해준다.

동일한 속성 그러나 다른 데이터를 가지고 있는 수많은 객체들을 생산할 수 있다.
원하는 모양대로 찍어내는 템플릿 갬성

class Amo {
//여기서 constructor은 클래스 내 메소드라고 부른다
constructor(name, skill, age) {
//여기서 this는 Amo 클래스 내의 속성 및 메서드를 지칭하는 방법..
this.name = name;
this.skill = skill;
this.age = age;
}

//이런식으로 다양한 메소드도 만들기 가능
sayHello(){
return hi, ${this.name};
}
takehit(){
this.skill = this.skill - 10;
}
}

const john = new Player("john park", "js", "22");
//Amo 클래스에서 생성된 모든 객체가 sayHello 메서드 호출
console.log(john.sayheelo());

inHeritance 상속.
자녀 클래스가 부모 클래스의 송석을 가질 수 있음.
class Human{
constructor(name)...
}

class Baby extends Human {
//이렇게 하면 인간의 메소드를 가지고 올 수 있음

}

profile
개발이 싫어.

0개의 댓글