You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
클래스(class)
붕어빵 찍어내기 (객체의 생성)
객체의 속성에 접근
속성 (property) 과 메서드 (method)
클래스는 속성과 메서드 반드시 2가지로 이루어져 있다.
속성 (property)
클래스의
변수
메서드 (method)
클래스의
함수
클래스의 메모리
데이터 영역
에 저장된다.힙 영역
에 저장된다.스택
에는힙 영역
에 저장된 클래스의 객체를참조하는 메모리 값
을 저장하게 된다.클래스는 객체가 저장된 주소를 전달
초기화 매서드
함수의 구현이 특별한 키원드인 iniit 으로 명명됨
인스턴스 생성 과정 : 저장 속성에 대한 초기값을 설정하여 사용 가능한 상태가 되는 것
생성자 매서드 실행의 목적은 , 모든 저장 속성 초기화를 통한 인스턴스 생성
(즉 생서아 실행 의 종료 시점에는 모든 저장 속성에 값이 저장 되어 있어야 함)
클래스, 구조체, (열거형)은 모두 설계도 일뿐이고,
실제 데이터(속성), 동작(메서드)을 사용하기 위해서는 ===> 초기화 과정이 반드시 필요함
생성자(이니셜라이저)와 self 키워드
언제 클래스 / 구조체를 사용해야 하는 가 ??
Apple 은 구조체를 사용하는 것을 권장하고 있다.
구조체
클래스
객체지향의 4대 특징
모델링
추상화란 실생활에서 구체적인 것을 관찰자가 관심있는 부분만 가지고 재조합 하는 것
실체들에서 관심있고 , 공통적인 특성을 뽑아내서 하나의 분류 (class)로 만든 것(모델링)
객체지향의 관점에서 , 실체들의 공통적인 특성을 뽑아내서 클래서로 정의하는 것 자체가 추상화의 개념
(예 - 도선관리 프로그램 → 제목 / 저자 / 출판사 / 총페이지 / 가격 등)
연관이 있는 속성 (상태)과 매서드 (기능)를 “하나의 클래스” 로 묶어서 활요한다는 개념
묶을 떄 , 개체는 자신이 맡은 역활을 수행하기 위한 하나의 목적을 가진 실페 라는 관점에서 접근해야 함
추상화와 밀접하게 연결되는 개념 ,
(추상화는 디자인 레벨 관점에서 바라보는 개념인데 반해 캡슗화ㅣ는 실제 코드로 구현 하는 레벨에서 개념)
은닉화 (Information hiding): 캡슐화를 하면 , 접근저에자 (private , public 등 )를 사용해 객체 외부에서 내부 데이터의 접근 통제가 가능해짐
Beta Was this translation helpful? Give feedback.
All reactions