본문 바로가기
Language/JAVA

JAVA :: 자바 용어 정리(5)

by stern07s 2023. 4. 19.
728x90
반응형

JAVA :: 자바 용어 정리(5)

상속 inheritance

상위(부모) 객체를 기반으로 하위(자식) 객체를 생성하는 관계를 말한다.

상위 객체는 자기가 가지고 있는 필드와 메소드를 하위 객체에게 물려주어 하위 객체가 사용 할 수 있도록 한다. 일반적으로 상위 객체는 종류를 의미하고, 하위 객체는 구체적인 사물에 해당한다. 자식 클래스를 선언할 때 어떤 부모 클래스를 상속받을 것인지 결정한다.

• 부모(parent class, super class / 상위 클래스): 해당 클래스에 선언된 변수와 함수를 물려주는 클래스

• 자식(child class, sub class / 하위 클래스): 다른 클래스로부터 물려받고자하는 클래스

 

오버라이딩 overriding

부모에게서 상속받은 메소드의 내용이 자식 클래스에 맞지 않을 경우, 자식 클래스에서 동일한 메소드를 재정의하는 것을 말한다.

 

다형성 polymorphism

같은 타입이지만 실행 결과가 다양한 객체를 이용할 수 있는 성질을 말한다.

코드 측면에서 보면 다형성은 하나의 타입에 여러 객체를 대입함으로써 다양한 기능을 이용할 수 있도록 해준다.

 

추상 클래스 abstract class

실체 클래스가 공통적으로 가져야 할 필드와 메소드들을 정의해 놓은 추상적인 클래스.

추상 클래스는 실체 클래스의 공통되는 필드와 메소드를 추출해서 만들었기 때문에 객체를 직접 생성해서 사용할 수 없다.

 

추상 메소드 abstract method

하위 클래스가 반드시 오버라이딩하도록 하고 싶은 경우 사용하는 메소드.

메소드의 선언부만 있고 메소드 실행 내용인 중괄호가 없다.

추상 메소드는 추상 클래스 안에서만 선언 가능함.

Animal animal1 = new Cat();
Animal animal2 = new Dog();
animal1.sound(); //야옹
animal2.sound(); //멍멍
 
인터페이스 interface

객체의 사용 방법을 정의한 타입이고 개발 코드와 객체가 서로 통신하는 접점 역할을 한다.

개발 코드가 인터페이스의 메소드를 호출하면 인터페이스는 객체의 메소드를 호출시킨다.

그렇기 때문에 개발 코드는 객체의 내부 구조를 알 필요가 없고 인터페이스의 메소드만 알고 있으면 된다.

 

중첩 클래스 nested class

클래스 내부에 선언한 클래스. 두 클래스의 멤버들에 서로 쉽게 접근 할 수 있고,

외부에는 불필요한 관계 클래스를 감춤으로써 코드의 복잡성을 줄일 수 있다.

•멤버 클래스: 클래스의 멤버로써 선언되는 중첩 클래스

•로컬 클래스: 메소드 내부에서 선언되는 중첩 클래스

 

익명 객체 anonymous object

이름이 없는 객체를 말한다. 익명 객체를 만들려면 어떤 클래스를 상속하거나 인터페이스를 구현해야 한다.

 

예외 exception

사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인해 발생하는 프로그램 오류

 

예외 처리 exception handling

일반적으로 프로그램이 처리되는 동안 특정한 문제가 일어났을 때 처리를 중단하고 다른 처리를 하는 것.

자바에서는 예외exception라고 부르는 오류를 처리하는 과정을 말하기도 한다.

• 일반 예외: 컴파일러 체크 예외라고도 한다. 만약 예외 처리 코드가 없다면 컴파일 오류가 발생한다. 일반 예외는 Exception을 상속받지만 Runtime Exception은 상속받지 않는다.

• 실행 예외: 컴파일하는 과정에서 예외 처리 코드를 검사하지 않는 예외를 말한다. 실행 예외는 RuntimeException을 상속받은 클래스들이다.

 
 
API Application Programming Interface

프로그램 개발에 자주 사용되는 클래스 및 인터페이스의 모음. 라이브러리library라고도 부른다.

 

프로세스 process

운영체제로부터 메모리를 할당받아 실행하는 애플리케이션의 코드

스레드 thread

한 가지 작업을 실행하기 위해 순차적으로 실행할 코드를 실처럼 이어 놓았다고 해서 유래된 이름.

하나의 스레드는 하나의 코드 실행 흐름이기 때문에 한 프로세스 내에 스레드가 두 개라면 두 개의 코드 실행 흐름이 생긴다는 의미.

 

★TIP 동시성, 병렬성

멀티 스레드는 동시성 또는 병렬성으로 실행된다. 동시성은 멀티 작업을 위해 하나의 코어에서 멀티 스레드가 번갈아가며 실행하는 성질을 말하고, 병렬성은 멀티 작업을 위해 멀티 코어에서 개별 스레드를 동시에 실행하는 성질을 말한다.

스택 stack

후입선출LIFO: Last In First Out 자료구조. 나중에 넣은 객체가 먼저 빠져나간다.

큐 queue

선입선출FIFO: First In First Out 자료구조. 먼저 넣은 객체가 먼저 빠져나간다.

스트림 stream

프로그램이 외부 파일, 외부 네트워크 등과 통신할 때 데이터가 흐르는 길.

이 때 외부란 같은 컴퓨터 내부라도 프로그램의 바깥에 별도로 존재하는 것을 말한다.

 

버퍼 buffer

데이터를 한 곳에서 다른 한 곳으로 전송하는 동안 일시적으로 그 데이터를 보관하는 메모리의 영역. 버퍼는 큐의 한 형태로, 요청된 자료는 버퍼에 도착한 순서대로 처리된다.

 

반응형

'Language > JAVA' 카테고리의 다른 글

JAVA :: 자바 문법 정리(2)  (0) 2023.04.21
JAVA :: 자바 문법 정리(1)  (0) 2023.04.20
JAVA :: 자바 용어 정리(4)  (0) 2023.04.18
JAVA :: 자바 용어 정리(3)  (0) 2023.04.17
JAVA :: 자바 용어 정리(2)  (0) 2023.04.16

댓글