- 배열은 요소를 순서대로 모아서 관리하기 위해 만들어진 자료구조이다.
- 배열의 모든 요소는 같은 타입을 가진다.
- 각각의 요소에는 정수 인덱스를 사용해서 접근한다.
# 배열
배열은 임의 접근(Random Access)을 허용한다.
이는 프로그램의 배열 요소 순서와 관계없이 빠르게 접근할 수 있음을 의미한다.
## Java에서 배열 표기법
- 다음 항목들을 지정하여 배열 선언:
- 배열에 나열될 요소들의 타입
- 배열의 차원
- 배열을 선언한 변수 이름
type[] name;
# 컬렉션
- 배열
- 크기를 조절할 수 없음
- 배열은 같은 타입의 요소를 저장하기 위한 자료구조임
- 배열의 요소는 읽기 전용 액세스 권한을 가질 수 없음
- 일반적으로 배열은 빠르지만 유연성이 떨어짐
- 컬렉션
- 크기를 조절할 수 있음
- 다양한 타입의 요소를 저장하기 위해 설계됨
- 컬렉션의 요소는 읽기 전용이 가능함
- 컬렉션은 배열에 비해 느리지만 유연함
# 객체지향 프로그래밍
Java는 객체지향 언어이다. Java를 사용하면 추상화, 상속성, 캡슐화, 다형성 등의 특징을 사용하여 소프트웨어에 새로운 기능을 추가하거나 기존의 기능 변경, 기능 제거에 유연한 방법을 제공하는 재사용성이 뛰어난 프로그램을 작성할 수 있다.
- 객체지향 프로그래밍 맥락에서 객체와 클래스를 이해한다.
- 객체의 세 가지 핵심인 Identity(식별), State(상태), Behavior(행위)를 이해한다.
- 추상화를 설명하고, 추상화가 유지 관리하기 쉬운 재사용 가능한 클래스를 만드는 데 어떻게 도움이 되는지 설명한다.
- 캡슐화를 사용하여 단일 클래스에서 메서드와 데이터를 결합하고 추상화를 적용한다.
- 클래스(class)와 객체(object)
- 캡슐화
- Java와 객체지향
- 객체지향 시스템 정의
## 클래스(Class)
클래스란 ?
- 사람의 분류(classification)에 따라 정의된 인공물
- 행동(behavior)과 속성(attribute)에 따라 분류(classify)
- 분류한 이름과 설명에 모든 사람이 동의할 수 있음
프로그래머에게 ..
- 일반적인 행위와 속성을 설명하는 이름 붙여진 문(statement)의 구조
- 데이터와 기능을 모두 포함하는 데이터 구조
## 객체(Object)
객체란 ?
- 클래스의 인스턴스
객체의 세 가지 특징
- Identity(식별): 한 객체는 다른 객체와 구분
- Behavior(행위): 객체는 작업을 수행
- State(상태): 객체는 상태를 포함
## 추상화(Abstraction)
추상화란 ?
- 불필요한 것을 제거하고 필요한 것을 선택하는 것
- 어떤 것이 중요하고 어떤 것이 중요하지 않은지에 대한 판단
- 중요점에 대한 초점을 기반으로 판단
- 신뢰할 수 없고 필요 없는 것에 대한 판단
- 캡슐화는 추상화의 강력한 도구
## 캡슐화(Encapsulation)
캡슐화란 ?
- 데이터와 메서드의 결합
- 접근 가시성 제어
- 객체 데이터
- 정적 데이터 사용
- 정적 메서드 사용
'CNU SW 아카데미 > 1주차' 카테고리의 다른 글
[컴퓨터 기초] 객체지향설계(Object-Oriented Programming) (1) | 2024.07.05 |
---|---|
[컴퓨터 기초] 메서드와 파라미터 (0) | 2024.07.03 |
[컴퓨터 기초] Java의 값 타입 등 (1) | 2024.07.02 |
[컴퓨터 기초] (0) | 2024.07.01 |