Object Oriented Programming(OOP)

지식탐구·2021년 7월 19일
0

Section 2

목록 보기
1/1

배운것
절차지향프로그래밍은 컴퓨터가 편하게 쓴거
객체지향프로그래밍은 사람이 편하게 쓴거(그렇다고 위에서 아래로 읽는건 변하지 않는다)
객체지향프로그래밍에서 필요한거 es6신문법 Class(즉 blueprint)메소드와 instance Object(즉 제품 여기서 인스턴스를 붙여준 이유는 js오브젝트랑 구분해주기 위해서 제품만들때는 new를 붙여준다) 그리고 constructor 메소드(생성자 즉 인자를 받아서 속성(key)을 만들어준다 왜? 객체니까! 안에 this 사용해주면 그 순간 이름받아옴)

Class 이름(){
constructor(key1, key2, key3){
this.key1= key1
this.key2= key2
this.key3= key3
}
그외메소드1(){}
그외메소드2(){}
}

객체지향프로그래밍할때 지켜야하는 원칙
eiap(e: encapsulation i:inheritence a:abstraction p:polymorphysm)
e 캡슐화 은닉개념포함 외부에서 데이터에 접근못하도록 숨겨놓는거
i 상속 부모가 자식한테 상속해준다?이것보단 그냥 게임에서 직업 전직하는 느낌
extends 메소드를 쓴다
그리고 super()로 받는다 ()안에 아무것도 안써주면 상속된 키값 다 불러오는거
이때 this 전에 super로 불러와야한다. 이때 불러오는건 constructor 안에 있는 값만!!
메소드1,2는 따로 써줄필요없음!!
메소드1,2는 자동생성된 proto라는 인스턴트 객체를 통해 prototype을 통해 자동으로 불러와짐

Class 메이지 extends 노비스 (){
constructor(key1, key2, key3, 추가키){
// key1, key2, key3 생략가능
super(key1, key2, key3)
// key1, key2, key3 생략가능
this.key1= 다른걸로변경할래
// key1 변경하고싶으면
this.추가키=추가키
}
추가메소드3(){}
}
profile
확장하는 지식 보관소

0개의 댓글