배열이란?
- 자료를 순차적으로 관리하는 구조, 배열
100명의 학번의 자료형을 정수라고 하면 학생이 100명일 때 int studentID1, int studentID2, ... int studentID100 이렇게 변수를 100개를 선언해서 사용해야하는데 일일이 변수들을 선언하는 것은 너무 귀찮고 번거롭다.
이 때 사용하는 자료형이 배열이다.
배열은 자료 구조의 가장 기초 내용이다.
배열 선언과 초기화
배열을 사용하려면 먼저 배열을 선언해야 한다.
배열도 변수와 마찬가지로 자료형을 함께 선언한다.
1. 자료형 [] 배열이름 = new 자료형[개수];
2. 자료형 배열이름[] = new 자료형[개수];
배열 사용하기
선언한 배열의 각 요소에 값을 넣을 때나 배열 요소에 있는 값을 가져올 떄는 [ ] 를 사용한다.
만약 배열의 첫 번째 요소에 값 10을 저장한다면
studentIDs[0] = 10; // 배열의 첫 번째 요소에 값 10을 저장하는 코드
*배열의 첫 번째 요소는 0부터 시작.
상속이란?
객체 지향 프로그래밍의 중요한 특징 중 하나가 상속이다. 상속은 우리가 일반적으로 알듯 무엇인가를
물려받는다는 의미이다.
B 클래스가 A 클래스를 상속받으면 B클래스는 A 클래스의 멤버 변수와 메서드를 사용할 수 있다. 객체 지향 프로그램은 유지보수하기 편하고 프로그램을 수정하거나 새로운 내용을 추가하는 것이 유연한데, 그 기반이 되는 기술이 바로 상속이다.
상속의 목적
클래스의 재사용, 연관된 일련의 클래스들에 대한 공통적인 규약을 정의한다.
상속의 장점
1. 보다 적은 양의 코드로 새로운 클래스 작성 가능
2. 코드를 공통적으로 관리하기 때문에 코드의 추가 및 변경 용이
3. 코드의 중복을 제거하여 프로그램의 생산성과 유지보수에 크게 기여
상속의 특징
1. 모든 클래스는 Object클래스의 후손
Object클래스가 제공하는 메소드를 오버라이딩하여 메소드 재구현 가능
ex) java.lang.String 클래스의 equals()와 toString()
2. 부모클래스의 생성자, 초기화 블록은 상속 안 됨
자식 클래스 생성 시, 부모 클래스 생성자가 먼저 실행
자식 클래스 생성자 안에서 부모 클래스 생성자 호출을 명시하고 싶으면 super() 활용
3. 부모의 private멤버는 상속은 되지만 직접 접근 불가
자식 객체 생성 시에 부모의 필드 값도 전달 받은 경우,
자식 생성자 안에서 부모의 private 필드에 직접 접근하여 대입 불가
super() 이용하여 전달받은 부모 필드 값을 부모 생성자 쪽으로 넘겨서 생성하거나
setter, getter 메소드를 이용하여 접근
사용방법
클래스 간의 상속 시에는 extends 키워드 사용
[접근제한자] class 클래스명 extends 클래스명 {}
public class Academy extends Company {}
단일 상속과 다중 상속
- 단일 상속(Single Inheritance)
클래스간의 관계가 다중 상속보다 명확하고 신뢰성 있는 코드 작성
자바에서는 다중 상속 미지원 - > 단일 상속만 지원새
- 다중 상속(Multiple Inheritance)
C++에서 가능한 기능으로 여러 클래스로부터 상속을 받으며
복합적인 기능을 가진 클래스를 쉽게 작성 가능
서로 다른 클래스로부터 상속 받은 멤버 간의 이름이 같은 경우 문제 발생
'JAVA' 카테고리의 다른 글
JAVA에서의 클래스와 객체 (0) | 2024.07.14 |
---|---|
참조 변수와 일반 변수에 대한 이해 (1) | 2024.07.08 |
JAVA 변수 with 이클립스 (0) | 2024.07.08 |
JAVA 프로그래밍 기초 with.이클립스 (1) | 2024.07.08 |
(디지털컨버전스)공공데이터 융합 JAVA 개발자 양성과정에 대한 각오 (1) | 2024.06.30 |