☕ Java

Java
☕ Java

[Java] Day13 - 예외와 예외처리

오류와 예외 컴퓨터 시스템이 동작하는 도중에 예상하지 못한 사태가 발생하여 실행 중인 프로그램이 영향을 받는 것을 오류(error)와 예외(exception) 두 가지로 구분할 수 있습니다. 오류(error) 시스템 레벨에서 프로그램에 심각한 문제를 야기하여 실행 중인 프로그램을 종료시킵니다. 이러한 오류는 개발자가 미리 예측하여 처리할 수 없는 것이 대부분이므로, 오류에 대한 처리는 할 수 없습니다. 예외(exception) 예외는 오류와 마찬가지로 실행 중인 프로그램을 비정상적으로 종료시키지만, 발생할 수 있는 상황을 미리 예측하여 처리할 수 있습니다. 따라서 개발자는 예외 처리(exception handling)를 통해 예외 상황을 처리할 수 있도록 코드의 흐름을 바꿀 필요가 있습니다. 예외 처리 ..

☕ Java

[Java] Day12 - 컬렉션 프레임워크

컬렉션 프레임워크 컬렉션 프레임워크란 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합을 의미합니다. 즉, 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것입니다. 컬렉션 프레임워크 주요 인터페이스 컬렉션 프레임워크에서는 데이터를 저장하는 자료 구조에 따라 다음과 같은 주요 인터페이스를 정의하고 있습니다. List 인터페이스 Set 인터페이스 Map 인터페이스 List List 특징 요소의 저장 순서가 유지됩니다. 같은 요소의 중복 저장을 허용합니다. 크기를 지정하지 않아도 선언 가능합니다. toString 오버라이딩이 가능합니다. 다양한 메서드가 제공됩니다. List 종류 ArrayList LinkedList Vector..

☕ Java

[Java] Day11 - 추상화 / 캡슐화 실습

실습 1 프로그램 개요 class Pokemon - String name - int win 이긴횟수 - void hello() : 각각의 포켓몬마다 고유한 소리를 출력 - boolean game(Pokemon pokemon) -> pokemonA.game(pokemonB); 홀홀 작은값이 이김 짝짝 큰값이 이김 홀짝,짝홀 홀수가 이김 class 생성시 1. abstract일까? 1) 이 클래스의 객체가 필요한가? 2) 추상메서드가 있나? == 오버라이딩을 강제해야하는 메서드가 있나? == 재정의해야하는 메서드가 있나? 2. 멤버변수 생성 1) private 2) getter,setter 3. 생성자 4. 메서드 1) 오버라이딩(재정의)을 강제해야되나? => 추상메서드로 만들어야하나? 2) '기능'을 보고..

☕ Java

[Java] Day11 - 추상 클래스

추상 클래스 추상 메서드 추상 메서드란 자식 클래스에서 반드시 오버라이딩해야만 사용할 수 있는 메서드를 의미합니다. 추상 메서드를 선언하여 사용하는 목적은 추상 메서드가 포함된 클래스를 상속받는 자식 클래스가 반드시 추상 메서드를 구현하도록 하기 위함입니다. 추상 메서드 선언 abstract 반환타입 메서드명(); 위와 같이 선언부만 있고 구현부가 없다는 의미로 선언부 끝에 바로 세미콜론(;)을 작성합니다. 추상 클래스 하나 이상의 추상 메서드를 포함하는 클래스를 가리켜 추상 클래스라고 합니다. 반드시 사용되어야 하는 메서드를 추상 클래스에 추상 메서드로 선언해 놓으면, 이 클래스를 상속받는 모든 클래스에서는 이 추상 메서드를 반드시 재정의해야 합니다. 추상클래스 특징 객체화(인스턴스화) 불가 추상 메서..

☕ Java

[Java] Day11 - 캡슐화

캡슐화 캡슐화란 외부로 부터 클래스에 정의된 속성과 기능들을 보호하고, 필요한 부분만 외부로 노출될 수 있도록 하여 각 객체 고유의 독립성과 책임 영역을 안전하게 지키는 것을 의미합니다. 접근 제어자 자바 객체 지향 프로그래밍에서 캡슐화를 구현하기 위한 방법 중 하나는 접근제어자를 활용하는 것 입니다. 접근제어자는 클래스 또는 클래스 내부의 멤버들에 사용되어 해당 클래스나 멤버들을 외부에서 접근하지 못하도록 접근을 제한하는 역할을 합니다. 접근 제어자 종류 public default protected private 접근 제어자 클래스 내 패키지 내 다른 패키지의 하위 클래스 패키지 외 설명 private O X X X 동일 클래스 내에서만 접근 가능 default O O X X 동일 패키지 내에서만 접근..

☕ Java

[Java] Day10 - 상속 심화 (오버라이딩)

오버라이딩 오버라이딩이란 상속 관계에 있는 부모 클래스에서 이미 정의된 메서드를 자식 클래스에서 같은 시그니처를 갖는 메서드로 다시 정의하는 것을 의미합니다. 오버라이딩을 통해 기존에 있던 메서들를 원하는 기능으로 바꾸어 쓸 수 있습니다. 실습 1 프로그램 개요 점 클래스 Point가 있습니다. int x, int y를 멤버 변수로 가지고 있습니다. x, y의 좌표가 같다면 같은 점으로 인식할 수 있도록 해주세요!~~ main() { Point[] data = new Point[3]; data[0]에는 점(10, 20) data[1]에는 점(123, 20) data[2]에는 점(10, 20) 이 저장되어 있습니다. data[0]과 data[1], data[0]과 data[2]를 비교해 주세요!~~ } 색..

harveydent
'☕ Java' 카테고리의 글 목록 (3 Page)