School/Java Programming

    Java Programming - Collection Framework

    Java Programming - Collection Framework

    컬렉션 프레임워크 소개 애플리케이션을 개발하다 보면 다수의 객체를 저장해 두고 필요할 때마다 꺼내서 사용하는 경우가 많다. 만약 10개의 Product 객체를 저장해 두고, 필요할 때마다 하나씩 꺼내서 이용한다고 가정해봅시다. 어떻게 Product객체를 효율적으로 추가, 검색, 삭제할지 고민하게 되는데, 가장 간단한 방법은 배열을 이용하는 것입니다. 배열은 쉽게 생성하고 사용할 수 있지만, 저장할 수 있는 객체 수가 배열을 생성할 때 결정되기 때문에 불특정 다수의 객체를 저장하기에는 문제가 있습니다. 물론 배열의 크기를 크게 생성하면 되겠지만, 이것은 좋은 방법이 될 수 없습니다. 배열의 또다른 문제점은 객체를 삭제했을 때 해당 인덱스가 비게 되어 낱알이 듬성듬성 빠진 옥수수가 될 수 있습니다. 그렇게 ..

    Java Programming - Basic API Class

    API도큐먼트는 쉽게 API를 찾아 이용할 수 있도록 문서화한 것을 의미한다. 다음 페이지를 방문하면 볼 수 있다. https://docs.oracle.com/javase/8/docs/api/ Java Platform SE 8 docs.oracle.com java.util 패키지 java.util패키지는 자바 프로그램 개발에 조미료 같은 역할을 하는 클래스를 담고 있다. 컬렉션 클래스들이 대부분을 차지하고 있는데, 컬렉션 클래스들은 나중에 다룰 것이다. 우리가 기본적으로 extends를 해주지 않으면 java.lang.Object클래스를 상속하게 된다. 객체 비교(equals()) 자바에서는 두 객체를 동등 비교할 때 equals() 메소드를 흔히 사용한다. 논리적으로 동등하다는 것은 같은 객체이건 다른..

    Java Programming - Exception

    에러는 JVM실행에 문제가 생겼다는 것이므로 JVM위에서 실행되는 프로그램을 아무리 견고하게 만들어도 결국 실행 불능이 된다. 자바에서는 에러 이외에 예외라고 부르는 오류가 있다. 예외란 사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인해 발생하는 프로그램 오류를 말한다. 예외가 발생하면 프로그램은 곧바로 종료된다는 점에서 동일하다. 그러나 예외는 예외 처리를 통해 프로그래밍을 종료하지 않고 정상 실행 상태가 유지되도록 할 수 있다. 예외에는 두 가지 종류가 있습니다. 바로 일반예외이고 다른 하나는 실행 예외 입니다. 일반 예외는 컴파일러 체크 예외라고도 하는데, 자바 소스를 컴파일 하는 과정에서 예외 처리 코드가 필요한지 검사하기 때문입니다. 실행 예외는 컴파일하는 과정에서 예외 처리 코드를 검사..

    Java Programming - 중첩 클래스 & 중첩 인터페이스

    클래스가 여러 클래스와 관계를 맺는 경우는 독립적으로 선언하는 것이 좋으나, 특정 클래스와 관계를 맺을 경우에는 관계 클래스를 클래스 내부에 선언하는 것이 좋다. 또한 인터페이스도 클래스 내부에 선언할 수 있다. 이런 인터페이스를 중첩 인터페이스라고 한다. class ClassName { class NestedClassName { } } class ClassName { interface NestedInterfaceName { } } 중첩 인터페이스는 주로 UI프로그래밍에서 이벤트를 처리할 목적으로 많이 활용된다. 예를 들어 안드로이드에서는 다음과 같이 View 클래스의 클릭 이벤트를 처리하는 구현 클래스를 만들 수 있다. 중첩 클래스 중첩 클래스는 클래스 내부에 선언되는 위치에 따라서 두 가지로 분류된다..