innn

7강 본문

카테고리 없음

7강

33삼 2022. 7. 14. 11:11

7

 

객체 지향 프로그래밍 OOP

어떤 문제를 여러 개의 객체 단위로 나누어서 작업하는 방식

자바에서 클래스란 사물과 추상화를 표현하기 위해 필드와 메소드로 이루어진 정해진 틀을 의미

 

객체란?

클래스로 정의된 틀에서 생성된 하나의 사물

하나의 클래스에서 여러 개의 객체가 생성될 수 있으며, 이는 서로 다른 객체다.

 

객체의 상호 작용

객체들은 서로 간에 기능(동작)을 이용하고, 데이터를 주고 받음.

 

객체 간의 관계

- 객체 지향 프로그램에서는 객체는 다른 객체와 관계를 맺음

 

관계의 종류

집합 관계 : 완성품과 부품과의 관계(Composite Pattern)

사용 관계 : 객체가 다른 객체를 사용하는 관계 (연관, Association)

상속 관계 : 객체들간의 부모-자식간의 관계 (일반화, Generalization)

 

 

캡슐화(Encapsulation)

필드와 메소드를 캡슐화하여 외부 객체로부터 숨기고 보호하는 것.

? 잘못된 사용으로 객체 손상되는 것을 막기 위해서

이때 캡슐화에 쓰이는 도구는 접근 제한자 access modifier.

그리고 캡슐화한 클래스를 사용하는 방법은 getter/setter 이용한다.

 

참조 타입 변수 = 클래스 변수

 

static 영역

프로그램이 시작되고 종료될 때까지 데이터가 저장

 

스택 영역은

프리미티브 타입의 데이터 값이 저장되는 곳

 

힙은

레퍼런스 타입

 

메소드 = 추상화 표현 이라는 단어를 써야함.

 

 

 

로컬 변수 초기값이 안들어가면 기본값이 안들어감

멤버 변수는 초기값이 안들어가면 기본값이 들어감.

 

메소드 . 1 function 2 avstract

 

void 리턴 값이 없다

 

리턴값 없으면 void method () {~~

리턴값 있으면 retun a+b >>int method (){ } ~~

 

파라메타 개수와 ㅇ타입이 같아야함.

 

오버로딩 메소드 이름이 같으면서 파라메타 개수나 타입이 다를 때 그게 오버로딩

 

boolean 변수 사용할때는 메소드 변수 이름을 is로 지정하는게 좋다.