DAY 9 ( method, 객체지향(OOP), OOP 실습, 부록 : 메모리)
오늘의 노래 추천 🎡
- 아티스트
- KISS OF LIFE
- 앨범
- KISS OF LIFE
- 발매일
- 1970.01.01
사실 요 며칠 에스파 노래만 들어서 보따리 하나 풀었어요
요즘 행보가 참 느낌 좋은 키오프님들 데뷔앨범 1픽
DAY 9
부록 : Java 의 메모리와 주소
memory : 컴퓨터에서 데이터를 기억하기 위한 공간
stack
int a를 정의하면 a = n 이라는 변수의 값들이 stack에 쌓이게됨
* 메소드가 끝나는 시점에서 소멸
heap
Reference type ( String 또는 new 로 만들어진 타입) 을 저장하게됨
* 때문에 reference type의 경우 stack 의 sc, rd 등에는 "주소값"이 들어있음
첫번째 공간의 주소값을 참조함
* index ㅡ> reference 하고있는 주소(시작위치)로부터 몇칸 떨어져있는지 명시
대충 뭐 어쨌든
** 객체 지향 프로그래밍 (OOP) **
객체들의 관계를 중심으로 목적을 수행하는 프로그래밍 기법
* OOP의 특징 *
캡슐화 ( Encapsulation )
field와 method를 하나로 묶고 실제 구현내용을 외부로부터 감추는 기법 (정보은닉)
접근제한자를 통해 캡슐화
* 외부에서는 공개된 method의 인터페이스를 통해 접근 가능
상속 ( Inheritance )
작성된 상위클래스의 특성을 이어받아 하위클래스를 생성하는 기법
기존 코드를 재사용하거나 재정의 ㅡ> 재사용 + 확장
추상화 ( Abstract )
구체적인 것을 분해해서 관찰자가 관심있는 특성만 가지고 재조합 하는 기법
Modeling
+ 상속을 통한 추상화, 구체
+ 인터페이스를 통한 추상화
+ 다형성을 통한 추상화
다형성
같은 method를 호출하더라도 객체에 따라 다르게 동작하는 것
* 상위클래스 동작을 하위클래스에 다시 정의하여 사용하는 것 역시 다형성으로 볼 수 있음
class
object
field
method
[ 객체 생성 실습 ]
ㅡ1 햄버거 가게와 고객
1. 객체 생성
* customer 클래스 생성
* store 클래스 생성
this.변수명 : field에 있는 변수를 지정해줌
2. main 클래스 생성
* main 클래스에서 객체 생성
데이터타입 변수명(객체명) = new 클래스명 ( ) ;
ㅡ2 kakao talk 기능
1. Exkakao 클래스 생성
2. 객체 생성 및 기능 실행
ㅡ3 은행
나도 몰르것다
뿅