class

JEON.HYEONG.JUN·2022년 4월 3일
0

객체 정리

목록 보기
2/4

📌class

클래스는 객체지향 프로그래밍이다.

객체지향 프로그래밍이란, 프로그램을 객체들로 구성하고, 객체들 간에 서로 상호 작용 하도록 작성하는 방법입니다... 어려우니 헷갈릴때마다 레플을 다시 읽어보자.

아무튼 클래스는 객체를 잘 설계하기위한 틀이다.

원하는 구조의 객체 틀을 짜놓고, 비슷한 모양의 객체를 찍어낼 수 있다.

비슷한 객체를 많이 사용할 때 매번 만드는 것보다,

비슷한 모양의 객체를 틀처럼 만들고 찍어내는 것이 더 편리한건 당연하다.

참고로 CSS의 class와는 다르니 유의하자.

ray라는 객체를 만들어냈다.

그리고 객체 내부에서, 해당 객체의 프로퍼티에 접근하려면 "this"를 사용하면 된다.

값에 함수가 할당되는 것도 알고가자.

getprice함수는 위와 같이 호출가능하다.

그러나 새 차를 출시할 때마다 위같은 객체를 새로 만들면 불편하다.

필요한 정보를 담은 Car 라는 클래스 를 생성하여 관리하도록 하자.

Car라는 틀을 만들었고,

const morning = new Car('Morning', 2000000); /new를 꼭 써주자.

이런 식으로 클래스를 통해 객체를 생성. 인자에 차량이름과 가격만 입력하면 되니 굉장히 편하게 사용이 가능하다.


📌 생성자

위와 같이 클래스로 객체를 생성하는 과정을 '인스턴스화'라고 부른다.

객체의 설계도인 클래스는 문법이 비슷하다.

가장 큰 차이는 constructor라는 생성자 함수에 있다.

그리고 클래스를 통해 생성된 객체를 인스턴스 라고 부른다.

클래스는 새로운 인스턴스를 생성할 때마다

constructor() 메서드를 호출한다.

클래스 내에서 name.price와 같은 변수를 '멤버 변수'라고 부르고 멤버 변수는 this로 접근한다.

그리고 클래스이름은 항상 대문자로 시작하고, CamelCase로 작성해야한다.


📌인스턴스

인스턴스는 클래스를 통해 생성된 객체이며

인스턴스는 클래스의 프로퍼티이름과 메서드를 갖는다.

인스턴스는 클래스이름에 new를 꼭붙힌다!

new키워드는 constructor() 메서드를 호출하고 새로운 instance를 리턴한다.

새로운 차인 지바겐을 등록해봤다.


📌메서드

메서드는 함수지만 객체가 프로퍼티 값으로 갖고 있는 것을 메서드라고 한다.

클래스의 메서드는 객체의 문법과 같지만 클래스는 ( , )로 구분해줄 필요가 없다.

changeDepartment 매서드를 추가했다.

위와같이 동인천지점으로 변경이 완료되었다!

profile
💻😀👍🎁👏😁

0개의 댓글