💡JCF, Java Collection Framework 컬렉션은 자료구조이자 무언가를 모아놓은 집합(배열)이며, 기존의 배열에서 향상된 배열을 의미한다. 기존의 순수 배열에서 사용법을 개량하거나 용도에 따른 입출력 방식 또는 효율성을 높였다는 특징이 있으며, 어떤 분야에서 배열을 특화시켰느냐에 따라 종류가 굉장히 많다. 또한 컬렉션은 클래스와 내부 순수 배열을 가지고 있으며, 길이가 가변적이어서 방의 개수를 마음대로 늘이고 줄이는게 가능하다는 장점이 있다. 컬렉션을 읽는 방법 - Array+ List - Linked+ List - Hash+ Map - Tree+ Map - Hash+ Set - Tree+ Set 앞에 단어는 물리 구조(메모리의 모양)를 나타내고, 뒤에 단어는 인터페이스(사용법)을 나타낸..
프로그래밍 공부를 하면서 공식 도큐먼트를 보는 연습이 필요하다. Java® Platform, Standard Edition & Java Development Kit Version 11 API Specification Overview (Java SE 11 & JDK 11 ) This document is divided into two sections: Java SE The Java Platform, Standard Edition (Java SE) APIs define the core Java platform for general-purpose computing. These APIs are in modules whose names start with java. JDK The Java Development K..
예외는 런타임 오류가 발생한 것을 의미하며, 이러한 예외가 발생할 것을 예측하여 예외처리를 하는 게 가능하다. Java에서는 예외 처리 하는 방식으로 전통적인 방식과 전용 방식이 있다. 전통적인 방식은 if else 문을 사용하며, 전용 방식으로는 try catch finally 문을 사용한다. 💡try catch finally try { } catch (Exception e) { // TODO: handle exception } private static void tryCatch() { int num = 10; try { // 비즈니스 영역 System.out.println(100 / num); } catch (Exception e) { // 예외 처리 영역 System.out.println("예외 처..
제네릭 클래스는 자료형을 타입 변수로 대체한다. 때문에 클래스가 선언될 때 까지는 자료형 결정이 안 되었다가 객체가 생성될 때 결정이 된다. 제네릭 클래스를 작성하려면 타입 변수와 인자 리스트가 필요하다. T: 타입 변수 (메소드의 '매개 변수' 역할) : 인자 리스트 (메소드의 '()' 역할) 제네릭 클래스의 T는 타입 변수로, 이는 메소드의 '매개 변수' 역할을 하며, 인자 리스트는 로, 메소드의 '()' 역할을 한다. 타입 변수는 자료형을 전달하는 변수로서 자료형을 마치 매개 변수처럼 취급하고 반드시 참조형만 가능하다는 특징이 있다. 또 타입 변수는 대소문자를 가리지 않으며, aaa, bbb로 작성할 수도 있지만, 보통 1글자 대문자로 적는다. 💡제네릭 클래스의 특징 public class Ex_G..
형변환에는 값형 형변환과 참조형 형변환이 있다. 값형 형변환은 boolean을 제외한 값형끼리의 형변환이며, integer형을 character형으로 바꾸고 double형을 float형으로 바꾸는 작업 등을 한다. 따지고보면 character도 숫자형(아스키코드)이기 때문에 값형 형변환은 숫자형끼리의 형변환이라고 이해할 수 있다.
인터페이스는 클래스의 일종으로, 클래스가 자료형인 것처럼 인터페이스도 마찬가지로 자료형이다. 인터페이스는 상속받는 여러 클래스들을 행동(사용법, 메소드)들을 통일시키는 역할을 하며, 이를 행동 규약을 정의한다고 한다. 따라서 인터페이스는 관계 형성에 많이 사용되고 있다. 인터페이스는 객체를 생성할 수 없지만, 참조 변수는 생성할 수 있다는 특징이 있다. 💡인터페이스 특징 1. 구현된 멤버를 가질 수 없다. 인터페이스는 클래스와 달리 멤버 변수를 가질 수 없다. 그리고 메소드 역시 구현부 또한 소유할 수 없다. 2. 클래스의 부모 역할을 한다. 인터페이스는 클래스의 부모 역할을 하며, 클래스가 인터페이스를 상속받을 수 있다. 이를 통해 다중 상속의 문제를 방지할 수 있고, 상속받는 클래스마다 공통된 기능을..
Java 메소드 오버로딩 (Method Overloading) 메소드마다 이름을 다르게 하여 기능을 명확하게 할 수도 있지만, 프로젝트가 커질수록 메소드의 개수 또한 많아지므로 모두 기억하고 사용하기 어렵다. 이때 사용할 수 있는 게 메소드 오버로 isaac-christian.tistory.com 지난번에 메소드 오버로딩(Method Overloading)을 살펴봤다. 메소드 오버로딩은 인자 리스트를 변화시키며 이름이 동일한 메소드를 여러 개 생성하는 기술이었다. 그렇다면 메소드 오버라이딩(Method Overriding)은 무엇일까? 이름이 비슷하긴 하지만 두 기술은 전혀 다른 기능을 제공한다. 메소드 오버라이딩은 클래스 상속 시에 발생하며, 메소드 재정의하여 상속받은 메소드를 수정하는 기술이다. 예시..
Object 클래스는 JDK에서 제공하는 클래스로, 사용 빈도가 높지는 않지만 자바를 통틀어 가장 중요한 클래스이다. 눈으로는 보이지 않는 경우가 많은데, 우리가 사용하는 것에 밀접하게 관계되어 있는 경우가 많으며, 모든 클래스의 근원(최상위 클래스)이 된다고 해서 루트 클래스(Root Class)라고 부른다. 💡Object 클래스 (Root Class) Class Object is the root of the class hierarchy.Every class has Object as a superclass. All objects,including arrays, implement the methods of this class. // class TestParent class TestParent extend..