햄코딩
DAY 7 본문
220422 노션 정리중
220422 블로그 정리중
Ch041Ex01 - array(배열)
array의 개념
- 하나의 변수로 여러 data를 다룰(handling) 수 있다.
- 하나의 변수로 여러 data에 접근 가능하다.
- 변수는 하나 + 번지는 여러 개.
- 길이의 개념(length) - 1에서 시작, 번지의 개념(index) - 0에서 시작
1) same data type, group handling, java object
- same data type : 정수 선언된 배열은 정수만, 실수 선언된 배열은 실수만 담는다. data type을 섞어 담을 수 없다.
- group handling : 데이터 그룹으로 다룬다.
- java object : (new를 통해 생성) array 변수는 주소를 담고, array는 다른 공간에 생성된다.
2) 배열의 선언과 초기화
3) 배열은 resize 불가, 길이(크기) 변경 불가
- Gabage Collector → Gabage Collection : 자바에서 사용하다가, 더 이상 사용하지 않는 메모리 회수(해제)
4) 배열의 복사는 가능하다.
Ch041Ex06 - 2차원 배열
2차원 배열 : 배열의 배열
- 1차원 배열 : 나홀로 아파트 - 아파트 이름 + 호수(변수 이름 + index)
- 2차원 배열 : 아파트 단지 - 아파트 이름 + 동번호 + 호수(변수 이름 + index + index)
객체 지향 프로그래밍 (Object Oriented Programming, OOP)
: 현실 세계의 사물을 모델링하여, 컴의 세계에서 구현하는 것.
modeling
- 주체에 따라 같은 사물을 모델링해도 형태가 달라질 수 있음
- 필요한 부분만 선별적으로 모델링 가능
- 개념 모델링 : 모델링 하고자 하는 대상의 개념들을 찾아낸다.
- 논리 모델링 : 모델링 하고자 하는 대상의 개념들을 논리적으로 정리한다.
- 물리 모델링 : 프로그래밍에 필요한 형태로 논리 모델링 결과를 변환하는 것.
- 개념 → 논리 → 물리
- 자바의 물리 모델링 결과 : public class saram {멤버 변수, 멤버 메소드}
예제) 사람을 모델링해보자.
- 개념 모델링 : 이름, 나이, 키, 몸무게, 혈액형, 최종학력, 직업, 자격증, 주소 등
- 논리 모델링 (이력서) : 이름, 생년월일, 최종학력 등
- 물리 모델링 (java)
class
: 현실 세계를 모델링한 결과를 프로그램에 적용하기 위하여 만든 자바 설계도.
- ~.java 파일 내부에 있는 class 선언은 new를 통해 메모리에 load 된다.
- 메모리에 올라간 class를 instance라고 부른다.
- 하나의 class는 무한대의 instance 생성 가능.
- class는 붕어빵 틀, instance는 붕어빵.
- 재사용성을 위해 사용.
class 파일의 구성요소
- package, import, 멤버 변수, 멤버 메소드, 생성자(특수한 메소드).
method
- 동적인 수행
- 접근 제한자 + 리턴 타입 + 메소드 이름 + 파라미터(arguments)
- 리턴 타입 : 이 메소드의 수행 결과 나오는 데이터가 어떤 변수 타입인지 알려주는 기능
- 파라미터(arguments) : 이 메소드를 수행하기 위해 필요한 데이터를 입력 받는 공간
- return : 메소드의 수행 결과를 준다
- 어떤 목적을 수행하기 위해, class의 내부에 선언된 코드 블럭