목차
1. 배열(1차원 배열, 2차원 배열)
2. 참조형(String 타입)
3. 객체지향 프로그래밍(객체, 클래스)
1. 배열
1) 1차원 배열 → ★ArrayEx05 / ArrayEx07 참고
① 메인 메소드와 사용자 정의 메소드에서의 배열 처리
② 향상된 for문(=확장 for문)에서의 배열 처리 → ★ArrayEx06 참고
- 형식: for( 변수 : 순차적인 자료구조(배열, 컬렉션) ) {
실행될 문장;
}
③ 배열 복사 → ★ArrayEx08 참고
- 배열은 한 번 생성하면 크기 변경 불가
- 더 많은 저장 공간이 필요하다면 보다 큰 배열을 새로 만들고 이전 배열로부터 항목 값들을 복사
- 방법: for문 이용, System.arrayCopy() 메소드 이용, Arrays 클래스 이용
2) 2차원 배열
① 값이 정해져 있지 않을 때 → ★Arr03 참고
int[][] score = new int[5][3];
자료형 배열변수 연산자 [5]:행 (가로)
[3]:열 (세로)
→ 정수값을 저장할 수 있는 5행 3열짜리 기억 공간을 생성
score[0][0]=85; score[0][1]=60; score[0][2]=70;
score[1][0]=90; score[1][1]=95; score[1][2]=80;
score[2][0]=75; score[2][1]=80; score[2][2]=100;
score[3][0]=80; score[3][1]=70; score[3][2]=95;
score[4][0]=100; score[4][1]=65; score[4][2]=80;
② 값이 정해져 있을 때 → ★Arr03 / Arr04 참고
int [][] score = { { 85, 60, 70}, // 0 행
{ 90, 95, 80}, // 1 행
{ 75, 80, 100}, // 2 행
{ 80, 70, 95}, // 3 행
{100, 65, 80} }; // 4 행
2. 참조형(String 타입)
• String 타입: 문자열을 저장하는 클래스 타입
1) 문자열 리터럴 동일하다면 String 객체 공유
2) new 연산자를 이용한 String 객체 생성
- 힙(heap) 영역에 새로운 String 객체 생성
- String 객체를 생성한 후 번지 리턴
3) 주소 비교, 값(데이터) 비교 → ★StringEx01 참고
• == : 참조하는 주소를 비교
• equals() : 참조하는 값(데이터)을 비교
* Java.lang (패키지) → String (클래스) → equals (메소드)
• 객체 배열(‘이것이 자바다’ p.167) → ★StringEx02 참고
- 객체의 주소를 참조하는(저장하는) 배열
3. 객체지향 프로그래밍(OOP: Object Oriented Programming)
1) 객체(Object)와 클래스(Class)
① 객체
- 물리적으로 존재하는 것 (자동차, 책, 사람)
- 추상적인 것(회사, 날짜) 중에서 자신의 속성과 동작을 가지는 모든 것
- 객체는 필드(속성) 과 메소드(동작)로 구성된 자바 객체로 모델링 가능
② 클래스
- 현실세계: 설계도 → 객체
- 자바: 클래스 → 객체
- 클래스에는 객체를 생성하기 위한 필드와 메소드가 정의
- 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스(instance)
- 하나의 클래스로부터 여러 개의 인스턴스를 만들 수 있음
• 클래스의 이름
- 한글 이름도 가능하나, 영어 이름으로 작성
- 알파벳 대소문자는 서로 다른 문자로 인식
- 첫 글자와 연결된 다른 단어의 첫 글자는 대문자로 작성하는 것이 관례
(ex. Car, Member, ChatClient, Web_Browser)
'Java' 카테고리의 다른 글
8일차: Java 메소드 호출/static/final - 2021.06.24 (0) | 2021.06.24 |
---|---|
7일차: Java 클래스(필드, 생성자, 메소드)- 2021.06.23 (0) | 2021.06.23 |
5일차: Java 메소드호출/배열 - 2021.06.21 (0) | 2021.06.21 |
4일차: Java 반복문(for,while,do~while)/보조제어문 - 2021.06.18 (0) | 2021.06.18 |
3일차: Java 연산자/제어문 - 2021.06.17 (0) | 2021.06.18 |