12.13

홍왕열·2021년 12월 13일
0

객체지향

객체지향 프로그래밍

객체.매소드()와 같이 개체 내에 메소드를 호출하는 방법

메소드 호출 방식을 이용할 때에는 화살표 함수를 쓰지 않는다.

똑같은 기능을 하는 카운터를 여러 개 만드는 방법 중 하나는, 아래 예제 코드와 같이 클로저 모듈 패턴을 이용하면 된다.

객체지향 용어

클래스와 인스턴스

클래스를 통해 만들어진 객체를 특별히 인스턴스 객체, 줄여서 인스턴스라고 부릅니다.

ES6로 넘어오면서 바뀐 것들

크게 4가지 컨셉으로 나뉜다.

추상화 - 추상화는 내부 구현은 아주 복잡한데, 실제로 노출되는 부분은 단순하게 만든다는 개념입니다.

아래처럼 kimcoding에 new Human('김코딩', 30)으로 instantiation 될 때 human 안에 있는 this는 kimcoding을 가르킨다.
여기서 let kimcoding은 new Human으로 인해서 instance가 된다.

proto type

Human이라는 클래스와 인스턴스, 그리고 프로토타입의 관계

Array(배열) 클래스와 인스턴스, 그리고 프로토타입의 관계

prototype = 원형(기본적)
javascript는 기본적으로 직접적인 method가 있는지를 먼저 찾는다.
아래 사진과 같이 prototype을 이용하여 이런 식으로 기본으로 저장해 놓으면 직접적인 method를 찾아보고 prototype을 찾게 된다

super, extends 키워드 및 과제

super가 호출된 뒤에만 this를 조회할 수 있다

super() -> 부모 class의 constructor를 호출 -> 결과값은 instance

super() 이렇게 비워두면 전부 상속하지만, 받을 것을 적어주는 것이 명시적으로 좋다.

무조건 적어주자!

자식 extends 부모 -> 부모class에 있는 것을 상속받는다.

this

method나 함수가 있으면 그 method가 자신이 속해있는 객체를 가르키는 특수한 키워드

오늘 배운 것

보통 함수가 객체에 속해있으면 method라고 함.
즉, method = 함수

Math.random() - method
random() - 함수

생코 13번부터 보기

profile
코딩 일기장

0개의 댓글