JAVA :: 자바 용어 정리(4)
객체 object
물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것을 말함.
ex) 자동차, 자전거, 책, 사람 / 학과, 강의, 주문 등...

인스턴스 instance
클래스로부터 만들어진 객체
★TIP 인스턴스 멤버와 정적 멤버
인스턴스 멤버란 객체(인스턴스)를 생성한 후 사용할 수 있는 필드와 메소드를 말한다.
이들을 각각 인스턴스 필드, 인스턴스 메소드라고 부른다.
정적 멤버는 클래스에 고정된 멤버로서 객체를 생성하지 않고 사용할 수 있는 필드와 메소드를 말한다.
이들을 각각 정적 필드, 정적 메소드라고 부른다.
정적 멤버는 객체가 아닌 클래스에 소속된 멤버이기 때문에 클래스 멤버라고도 한다.
생성자 constructor
new 연산자로 호출되는 특별한 중괄호 블록. 객체 생성 시 객체를 초과하는 역할을 한다.
메소드와 비슷하게 생겼지만, 클래스 이름으로 되어 있고 반환형이 없다.
객체 초기화란 필드를 초기화하거나, 메소드를 호출해서 객체를 사용할 준비를 하는 것을 말한다.
싱글톤 Singleton
전체 프로그램에서 하나의 클래스에 단 하나의 객체만 만들도록 보장해야 하는 경우에 사용하는데, 이 때 생성된 객체를 싱글톤이라고 부른다.
생성자를 호출한 만큼 객체가 생성되기 때문에 클래스 외부에서 new 연산자로 생성자를 호출할 수없도록 막아야 한다.
생성자 앞에 private 접근 제한자를 붙이고, 필드에 자기 자신의 객체를 static으로 선언하면 된다.
식별자 identifier
프로그래밍 언어에서 프로그래머가 변수, 메소드, 클래스 등에 부여하는 이름
리턴 타입 return type
메소드가 실행 후 리턴하는 값의 타입. 반환형이라고도 한다.
void로 선언된 리턴 값(return value)이 없는 메소드에서도 return문을 사용할 수 있지만 리턴값 없이 사용해야 한다.
리턴 return
함수를 실행했던 위치로 돌아가게 하는 것. 리턴값을 가지는 함수는 반드시 리턴할때 반환하는 값이 있어야 한다.
메소드 선언부 method signature
리턴형, 메소드 이름, 매개 변수 선언을 포함하는 것. 영문명 그대로 메소드 시그니처라고도 한다.
매개 변수 parameter
메소드가 실행할 때 필요한 데이터를 외부로부터 받기 위해 사용.
매개 변수가 필요한 경우가 있고 필요 없는 경우가 있다.
int mySum(int[] arr) {
return Arrays.stream(arr).sum();
}
...
int myVar = mySum(myArray);
...
필드 field
객체의 데이터가 저장되는 곳.
생성자와 메소드 전체에서 사용되며 객체가 소멸되지 않는 한 객체와 함께 존재한다.

상수 constant value
값을 한 번 저장하면 변경할 수 없는 변수.
상수의 이름은 모두 대문자로 작성하는 것이 관례이다. 서로 다른 단어가 혼합된 이름이라면 언더바( _ )로 단어들을 연결해준다.
static final double EARTH_SURFACE_AREA;
static final double EARTH_RADIUS = 6400;
static {
EARTH_SURFACE_AREA = 4 * MATH.PI * EARTH_RADIUS * EARTH_RADIUS;
}
…
EARTH_SURFACE_AREA = 10; //에러!
접근 제한자 access modifier
객체의 필드와 메소드의 사용 범위를 제한하여 외부로부터 보호한다.
캡슐화된 멤버를 노출시킬 것인지, 숨길 것인지를 결정하기 위해 접근 제한자를 사용한다.
★TIP GETTER와 SETTER
외부에서 마음대로 읽고 변경할 수 없도록 제어하는 메소드.
필드에 직접 접근하지 않고 데이터를 조회, 수정할 수 있도록 하는 역할을 한다.
만약 외부에서 필드값을 읽을 수만 있고 변경하지못하도록 하려면(읽기 전용) Getter 메소드만 선언하거나, 아니면 Setter 메소드를 필요에 따라private 혹은 protected 접근 제한을 갖도록 선언하면 된다.
오버로딩 overloading
오버로딩의 사전적 의미는 많이 싣는 것을 뜻한다. 하나의 메소드 이름으로 여러 기능을 담는다 하여 붙여진 이름이라 생각할 수 있다.
• 메소드 오버로딩: 클래스 내에 같은 이름의 메소드를 여러 개 선언하는 것.
매개 변수의 타입, 개수, 순서 중 하나가 달라야 한다.
•생성자 오버로딩: 매개 변수를 달리하는 생성자를 여러 개 선언하는 것.
★TIP 연산자 오버로딩
자바에서는 지원하지 않지만 C++과 같은 언어에서는 연산자도 오버로딩하여 사용할 수 있다.
타입 변환
자료 타입을 다른 자료 타입으로 변환하는 것
• 자동 타입 변환: 프로그램 실행 도중에 자동적으로 타입 변환이 일어나는 것을 말한다.
Animal animal1 = new Cat();
• 강제 타입 변환casting: 프로그래머가 강제적(명시적)으로 타입을 변환하는 것을 말한다.
float f1 = 1.23F;
int n1 = (int)f1; //n1에 1 저장
int n2 = f1; //자료형 불일치로 에러
'Language > JAVA' 카테고리의 다른 글
JAVA :: 자바 문법 정리(1) (0) | 2023.04.20 |
---|---|
JAVA :: 자바 용어 정리(5) (0) | 2023.04.19 |
JAVA :: 자바 용어 정리(3) (0) | 2023.04.17 |
JAVA :: 자바 용어 정리(2) (0) | 2023.04.16 |
JAVA :: 자바 용어 정리(1) (0) | 2023.04.15 |
댓글