일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 반려견 유기농 사료
- 자동화봇
- 반려견 열사병
- 티켓팅메크로
- 쿠팡메크로
- 쿠팡매크로
- 반려견 유기농
- 반려견
- 서울대입구 맛집
- 강아지 유기농 사료
- 샤로수길 데이트
- 홀리스틱 유기농
- 반려견 홀리스틱
- 강아지 홀리스틱
- 강아지 종류
- 강아지 더위
- 강아지
- 닥스훈트
- 티켓팅매크로
- 강아지종류
- 강아지 열사병
- 신포동 맛집
- 국비지원 예습
- 강아지 유기농
- 동인천 맛집
- 반려견 사료등급
- 샤로수길 맛집
- 부산 맛집
- 반려견 더위
- 반려견 종류
- Today
- Total
심심한잉여의 잡동사니
JAVA - 객체 배열 본문
객체 배열
객체를 저장하는 배열로 배열의 자료형을 클래스명으로 지정하여 활용
여러 사람의 데이터를 객체배열로 만들어 인덱스마다 객체 저장이 가능하다.
이를 통해 한 객체에 한 사람의 데이터를 담을 시 하나의 객체배열 선언으로 쉽게 컨트롤이 가능해진다.
객체배열 선언과 할당
선언과 할당 방법은 일반 배열과 동일하다.
선언
클래스명[] 배열명;
클래스명 배열명[];
위와 같이 선언하면 되며 현업에서는 왠만해서 앞에다 붙이는 것이 좋다고 했다.
할당
배열명 = new 클래스명[배열크기];
선언과 동시에 할당
클래스명[] 배열명 = new 클래스명[배열크기];
일반 배열과 동일하지만 다른 점은 자료형이 클래스라는 것이다.
객체들을 하나의 변수명으로 정리 및 입출력시키기에 딱 좋은 방법으로 보인다.
객체배열 초기화
객체배열 초기화 또한 일반 배열과 똑같이 초기화를 한다.
인덱스를 이용한 초기화
배열명[i] = new 클래스명();
선언과 동시에 할당 및 초기화
클래스명 배열명[] = {new 클래스명(), new클래스명()};
이렇게 초기화를 하며 배열과 같이 for문을 이용하여 하는것이 일반적이다.
객체배열 메모리
일반 배열과 비슷한 그림으로 나타낼 수 있으며 2차원 배열과 모양이 비슷하다고 볼 수 있다.
new로 인덱스마다 객체를 추가하기 때문에 배열크기에 따라 주소값이 결정되며 해당 주소값 안에 클래스에 대한 멤버변수들이 들어간다고 볼 수 있다.
따라서 객체와 배열을 공부한다면 이에 대해 어려움은 없을 것이라 생각된다.
마치며
실습 - 깃허브 : https://github.com/thyum3891/kh_java_study/commit/68992aecf924112eacabe4bf511adcc1d2a65ad1
실습과제를 풀며 null값으로 삭제명령어를 주었으나 강사님께서 null처리를 안시키기 위해서는 지울 때 null이 생기지 않도록 처리하는 것이 코드에서 실수를 줄일 수 있고 귀찮음이 없어질 수 있다고 알려주셨다.
따라서 실습과제를 한 것에 대해 수정해볼 예정이다.
배열에 대해 어느정도 이해를 하고 해당 실습과제를 풀이해보니 큰 어려움은 없었지만 null처리에 대해 아직 미흡한 것을 깨닫게 된 것 같다.
'코딩일기 > Java' 카테고리의 다른 글
JAVA - 다형성 (0) | 2021.08.23 |
---|---|
JAVA - OOP 상속 (0) | 2021.08.22 |
JAVA - OOP 객체 지향 프로그래밍 (0) | 2021.08.18 |
JAVA - 2차원 배열 (0) | 2021.08.16 |
JAVA - 1차원 배열 (0) | 2021.08.12 |