- 배열
배열사용해서 관리하는 이유 : 동일한 데이터타입끼리 묶어서 관리하기 용이함.
문제점 : 하지만 한 객체(인스턴스)의 데이터가 여러 배열로 관리하기 시작 되면 데이터 변경시 정확한 인덱스의 값들을 수정 및 삭제해야 하기 떄문에 위험하게 된다.(사람이 관리하기 좋지 못한 방식, 데이터 관리가 어렵다.)
- 클래스
*객체 생성시(new 연산자) 메모리(RAM) 에 올라가서 공간 확보됨.
ex) student1 = new Student()
dot(.)을이용해서 실메모리에 접근함.
Class : 객체를 생성하기 위한 틀, 변수(속성)+기능(메소드)로 정의되어진다.
Object, Instance : 클래스로 부터 생성된 실 객체.
* 어떤 특정 클래스로부터 나온 것을 강조할 때는 Instance 표현을 사용하는 편.(student1 은 Student의 인스턴스이다.)
- 클래스형 배열
배열에 생성된 변수들은 각 인스턴스의 참조값을 보관함. 따라서 최초에는 null(참조값이 없다.)로 초기화된다.
students[0] = students1;
students[0] = students2;
*자바에서 대입은 항상 변수에 들어있는 값을 복사한다. 인스턴스를 복사하는게 아니라, 참조값만 복사됨.
students[0] = x001;
students[1] = x002;
배열도 new로 생성함 --> 메모리상의 인스턴스를 만듬. 그리고 참조값을 리턴함.
Student student1 = new Student2(); //x001
student1.name = "학생1";
student1.age = 15;
student1.grade = 90;
Student student2 = new Student2(); //x002
student2.name = "학생2";
student2.age = 16;
student2.grade = 80;
Student[] students = new Student[]{student1, student2};
1)
Students[] students = new Students[2];
students[0] = student1;
students[0] = student2;
2) Students[] students = new Students[]{student1, student2};
3) Students[] students = {student1, student2};
전부다 같은 선언부 표현이지만, 3으로 갈수록 깔끔하다.
'JAVA' 카테고리의 다른 글
김영한 자바강의 5강 - 패키지 import (0) | 2024.03.12 |
---|---|
김영한 자바 강의 2강 -기본형과 참조형 (1) | 2024.03.05 |
JAVA 기본 환경 세팅 (0) | 2023.03.01 |
[Java] String Immutable (0) | 2021.08.25 |
[JAVA] replace , replaceAll 차이 (0) | 2021.08.18 |
최근댓글