객체 간의 상속
개발/Java
/ 2021. 4. 24.
클래스 상속 · 새로운 클래스를 정의할 때 이미 구현된 클래스를 상속(inheritance) 받아서 속성이나 기능을 확장하여 클래스를 구현 · 이미 구현된 클래스보다 더 구체적인 기능을 가진 클래스를 구현해야 할 때 기존 클래스를 상속 상속하는 클래스 : 상위 클래스, parent class, base class, super class 상속받는 클래스 : 하위 클래스, child class, derived class, subclass 상속의 문법 class B extends A { } extends 키워드 뒤에는 단 하나의 클래스만 올 수 있음 자바는 단일 상속(single inheritance)만을 지원 상속을 구현하는 경우 ① 상위 클래스는 하위 클래스보다 더 일반적인 개념과 기능을 가짐. ② 하위 ..
객체 배열을 구현한 클래스 ArrayList
개발/Java
/ 2021. 4. 23.
ArrayList java.util 패키지에서 제공 - ArrayList는 객체 배열을 좀 더 효율적으로 관리하기 위해 자바에서 제공해 주는 클래스 기존의 배열 선언과 사용 방식 · 배열의 길이를 정하고 요소의 개수가 배열의 길이보다 커지면 배열을 재할당하고 복사 · 배열의 요소를 추가하거나 삭제하면 다른 요소들의 이동에 대한 구현을 해야 함 객체 배열 생성 ArrayList 변수명 = new ArrayList(); ArrayList 사용 예제
2차원 배열
개발/Java
/ 2021. 4. 23.
다차원 배열 이차원 이상으로 구현된 배열 평면(이차원 배열)이나 공간(삼차원 배열)을 활용한 프로그램 구현 중첩 for문을 활용한 2차원 배열 사용 public class TwoDimensionTest { public static void main(String[] args) { int[][] arr = {{1,2,3}, {1,2,3,4}}; int i, j; for (i = 0; i < arr.length; i++) { for (j = 0; j < arr[i].length; j++) { System.out.print(arr[i][j] + ","); } System.out.println("\t" + arr[i].length); } } } · 위처럼 for문을 중첩으로 활용하여 소스를 작성해 보면 아래와 같..
객체 배열
개발/Java
/ 2021. 4. 23.
기본 자료형 배열은 선언과 동시에 배열의 크기만큼 메모리가 할당 되지만, 객체 배열의 경우엔 요소가 되는 객체의 주소가 들어갈(4바이트, 8바이트) null 상태로 메모리만 할당되고 각 요소는 객체를 생성하여 저장해야 한다. 책으로 보는 객체 배열 예제 책의 제목과 저자를 변수로 갖는 Book class를 만들어준다. public class Book { private String title; private String author; public Book() { } public Book(String title, String author) { this.title = title; this.author = author; } public String getTitle() { return title; } public..
배열(array)
개발/Java
/ 2021. 4. 23.
배열이란? · 동일한 자료형의 순차적 자료 구조 · 인덱스 연산자 [ ] 를 이용하여 빠를 참조 가능 → (배열에서 인덱스 연산자를 쓸 때, 위치는 0부터 시작) 배열의 맨끝 위치는 n-1에 해당 → 배열의 크기는 10이라면 위치는 0~9까지 · 물리적 위치와 논리적 위치가 동일 · 배열의 순서는 0부터 시작 ·자바에서는 객체 배열을 구현한 ArrayList를 많이 활용 배열 선언과 초기화 배열 선언하기 int[ ] arr1 = new int[10]; int arr2[ ] = new int[10]; 배열 초기화하기 배열은 선언과 동시에 자료형에 따라 초기화 됨 (정수는 0, 실수는 0.0, 객체는 null) 필요에 따라 초기값을 지정할 수 있음 ① int[ ] numbers = new int[ ] (10..
static 응용 - 싱글톤 패턴(singleton pattern)
개발/Java
/ 2021. 4. 22.
디자인 패턴 : 더 효율적이고 유지보수가 쉽게 객체지향으로 프로그래밍해서 23가지 패턴으로 정리한 것 그중 한 가지가 싱글톤 패턴이다. 싱글톤 패턴이란? 프로그램에서 인스턴스가 단 한 개만 생성되어야 하는 경우 사용하는 디자인 패턴 (예를 들면 회사(?)) static 변수, 메서드를 활용하여 구현 할 수 있음. ex. 싱글톤 패턴으로 회사 객체 구현하기 public class Company { private static Company instance = new Company(); //유일한 객체 private Company() { } //instance 생성없이 메서드를 호출할 것이기 때문에 static으로 적용 public static Company getInstance() { if(instance ..