복습
https://shins99.tistory.com/89
[혼공자] 조건문과 반복문 요약본
복습 https://shins99.tistory.com/88 [혼공자] 연산자 요약본 복습 https://shins99.tistory.com/85 [혼공자] 변수와 타입 요약본 변수 변수는 1개의 데이터를 저장하는 공간 · 변수 : 값을 저장할 수 있는 메모리
shins99.tistory.com
참조 타입과 참조 변수
- 자바는 객체 지향 언어임, 그래서 객체가 컴퓨터 어디에 저장되고 실행되는가 중요함
* 기본타입 : byte, short, char, int, long, float, double, boolean 타입
스택방에 값이 저장됨
* 참조타입 : 기본 타입을 제외한 자료형(타입) 배열, 열거형, 객체
스택방에 힙방번호(주소)가 저장됨 -> 힙방에 값이 저장됨
* JVM(java) 메모리 구조 : 메소드방(정적변수/상수, 함수, 생성자, 클래스코드) , 스택방(지역변수/매개변수), 힙방(객체, 배열)
* 비교연산자(==) : 기본타입에서 사용되면 값 비교, 참조타입에서 사용되면 방번호(주소) 비교
* null : 초기화 시 null로 초기화하는 것은 자바에서 피하는 것이 좋음
( null 포인트 예외 발생 가능서 높음 : 강제 프로그램 중단, 다른 서비스까지 중단 시킴 )
* null 포인트 예외 : 객체에 null을 넣어놓고, 객체의 함수 및 변수를 호출할 경우 대부분 발생.
배열
- 변수는 1개의 데이터만 저장되므로, 저장되어야 할 데어터 많아지면 불편함. 배열은 많은 양의 데이터를 적은 코드로 손쉽게 처리할 수 있음
* 배열 : 같은 자료형(타입)의 데이터를 연속된 공간에 나열하고, 인덱스를 부여해 놓은 자료구조(자바에서는 배열도 객체로 취급)
* 인덱스 : 배열 항목에 붙인 번호, 0 ~ n까지 범위
* 배열 선언 : 자료형[] 변수;
* 배열 생성 :
1) 자료형[] 변수 = {값1, ... 값n}; // 이때는 선언과 생성을 항상 1라인으로 작성해야함 (분리하면 컴파일 에러 발생)
2) 자료형[] 변수 = new 자료형[길이];
3) 자료형[] 변수 = new 자료형[길이] {값1, ...., 값n}; // 이때는 선언과 생성을 분리 작성해도 가능함
(2라인으로 작성 가능)
* 배열 길이 : 배열에 저장할 수 있는 항목(값) 개수, .length 로 배열 개수를 알 수 있음(읽기 전용)
* 다차원 배열 : 배열 값이 또다른 배열일 경우 다차원 배열이라고 함
자료형[][] 변수 = new 자료형[행크기][열크기]
자료형[][] 변수 = { {열1, ... 열n}, {열1,... 열n} } // 바깥 {} : 행(바깥 for문), 안쪽 {} : 열(안쪽 for문),
* 향상된 for문 : for(자료형 변수 : 배열) {반복문}, 반복 실행 위해 증감식 사용하지 않음
(배열의 끝까지 자동 증가되면서 실행됨)
반복할 때마다 변수에는 배열에서 가져온 값이 하나씩 저장됨
열거 타입
- 몇가지로 한정된 데이터일(상수) 경우 열거 자료형을 고려함( 요일, 계절 등 )
* 열거 타입 : 몇 가지로 제한된 상수를 가지는 타입
* 열거 타입 선언 : enum 타입 { 상수1, 상수2, ... 상수n }
* 열거 상수 : 열거 자료형(타입) 선언 때 주어진 상수
사용법 : 열거형이름.상수명 ex) Week.MONDAY
* 열거 타입 변수 : 열거 자료형으로 선언된 변수.
ex) Week today = Week.FRIDAY; // today 가 열거 자료형 변수임
'[JAVA] > [혼공자]' 카테고리의 다른 글
[혼공자] 상속 요약본 (0) | 2023.10.02 |
---|---|
[혼공자] 클래스 요약본 (1) | 2023.10.01 |
[혼공자] 조건문과 반복문 요약본 (1) | 2023.09.30 |
[혼공자] 연산자 요약본 (0) | 2023.09.30 |
[혼공자] 변수와 타입 요약본 (0) | 2023.09.26 |