최초 작성일: 2024-09-18
최종 작성일: 2024-09-18
목표 : 정처기 합격 및 CS 지식 쌓기
JAVA 언어
이식성 -JVM(Java Virtual Machine)
다양한 애플리케이션 개발
멀티 스레드 구현 : 멀티 스레딩을 지원하여 복잡한 프로그램 개발에 유리
동적 로딩 지원
오픈 소스 라
2. JAVA 기본 구성
(1) 클래스
객체의 속성과 연산의 구조를 정의하는 틀
속성은 멤버 변수로 연산은 메서드로 정의됨
(2) 멤버 변수
객체가 가지는 속성을 정의 ( 나이, 키 등)
해당 객체가 가지고 있는 고유한 값으로, 객체의 상태를 나타냄
(3) 메서드
특정 작업을 수행하기 위한 명령문의 집합
멤버 변수의 값이나 상태를 변경하는 데 사용될 수 있는 명령의 집합
(4) 접근 지정자
클래스의 멤버(변수와 메서드)에 대한 접근 권한을 지정
Public – 접근 제한 없음
Protected – 동일 패키지와 상속받은 클래스
Default – 동일 패키지 (폴더)
Private – 동일 클래스 ( 캡슐화, 정보 은닉)
종류 | 접근 범위 | 클래스 | 패키지 | 상속 | 전체 |
Public | 접근 제한 없음 | O | O | O | O |
Protected | 동일 패키지와 상속받은 클래스 | O | O | O | |
Default | 동일 패키지 | O | O | ||
private | 동일 클래스 | O |
(5) 인스턴스
클래스를 기반으로 생성된 객체의 실체
메모리에 할당되어 실제 작동하는 객체
(6) 객체 정의와 생성
현실 세계를 객체로 정의함
3. 객체 지향 특징
(1) 생성자(Constructor)
인스턴스 생성 시 초기값을 설정하는 역할
자바에서 생성자의 이름은 클래스의 이름과 동일해야함
다양한 매개변수를 사용하여 여러 개의 생성자를 오버로딩 할 수 있음
(2) 예외 처리(exception handling)
프로그램 실행 중 발생하는 예외상황을 처리하는 방법
예외가 발생했을 때 안정적으로 프로그램을 종료하거나 오류를 처리함
Try catch finally
(3)상속
부모 클래스의 멤버를 자식 클래스가 상속받아 사용할 수 있음
클래스 재 사용을 통해 효율적인 개발과 개발 기간 단축 가능
부모 클래스의 private 멤버를 직접 상속받을 수 없음(접근 불가)
Extends 키워드를 사용하여 상속 구현
(4) 메서드 오버라이딩
상속 관계에서 부모 클래스의 메서드를 자식 클래스에서 재정의하는 것
부모 메서드와 동일한 이름, 리턴 타입, 매개 변수를 가져야함
추상 클래스나 인터페이스를 상속받을 때 중요한 개념임
**다형성(오버 로딩, 오버 라이딩- 재정의)
(5)메시지 오버 로딩
같은 이름의 메서드를 매개변수의 개수나 타입을 달리하여 중복 정의하는 것
매서드 이름은 동일하지만 인자의 개수나 타입이 다름
4. 추상 클래스와 인터페이스
(1) 추상 클래스 (abstract class)
구분 | 설명 |
개념 | - 하나 이상의 추상 메서드(미완성 메서드)를 포함하는 클래스 - 추상 클래스 자체로는 인스턴스를 생성할 수 없음 |
사용방법 | - 추상 클래스는 상속받은 자식 클래스에서 모든 추상 메서드를 구현(오버라이딩)해야함 - 구현된 메서드를 통해 기능을 완성 시킴 |
(2) 인터페이스(implements)
구분 | 설명 |
개념 | 모든 메서드가 추상 메서드인 클래스 |
사용방법 | - 인터페이스는 상수와 추상 메서드만을 멤버로 가질 수 있었으나 최근 자바 버전에서는 더 유연해짐 - 클래스가 인터페이스를 구현할 때는 인터페이스에 선언된 모든 추상 메서드를 구현해야함 - 다중 상속의 효과를 낼 수 있음 |
'스터디스터디 > 정처기' 카테고리의 다른 글
/WIP/[실기] C언어 - 문제풀이(22~31) (0) | 2024.09.18 |
---|---|
/WIP/[실기] C언어 - 문제풀이(13~21) (0) | 2024.09.18 |
/WIP/[실기] C언어 - 문제풀이(01~12) (0) | 2024.09.16 |
[실기] C언어 (6) | 2024.09.16 |
[실기] 알고리즘 표현 방법 & 프로그래밍 언어 특성 (1) | 2024.09.15 |