1. 객체지향언어는 프로그래밍 언어와 객체지향적 개념(규칙)이 접목하여 코드의 재사용성이 높고 유지보수가 용이하여 중복 코드를 제거하는 특징을 가지고 있다.
객체지향의 특징은 크게 네 가지로 분류된다.
- 캡슐화
- 상속
- 추상화
- 다형성
2. 클래스와 객체
1) 클래스는 객체를 정의해 놓은 것이며 객체를 생성하는데 사용한다.
3. 객체
1) 형태: 속성(변수) + 기능(메소드)
2) 객체는 실제로 존재하는 것으로 사물 또는 개념을 일컬으며, 객체가 지닌 '기능'과 '속성'에 따라 달리 사용한다.
//Tv클래스: 설계도
class Tv {
//속성: 변수
String color;
boolean power;
int channel;
//기능: 메소드
void power()
void channelUp()
void channelDown()
}
3) 객체와 인스턴스
객체: 모든 인스턴스를 대표하는 일반적인 용어
인스턴스: 특정 클래스로부터 생성된 객체(예: Tv인스턴스)
예) 클래스 → 인스턴스(객체) : 클래스로부터 객체를 생성하는 것을 객체의 인스턴스화라고 한다.
클래스가 필요한 이유? 객체를 생성하기 위해서.
객체가 필요한 이유? 필요에 의해 사용하기 위해서.
흔히 TV설계도를 '클래스'라고 하며 TV를 '객체'라고 하는데, 이 TV를 구성하고 있는 여러 요소는 속성과 기능으로 나뉜다. 이때 이 속성이 변수, 기능을 메소드라고 하며 객체를 구성하는 요소라고 할 수 있다.
한 파일에 여러 클래스 선언하기.
//1. 가급적 하나의 소스파일에는 하나의 클래스만 작성하는 것이 바람직하다.
//소스파일 이름과 메인 메소드가 포함돼 있는 클래스의 명칭과 일치해야 한다.
public class Hello2 {} //2. 소스파일의 이름은 public class이름과 일치해야 한다.
public class Hello3{} //3. 하나의 소소파일에는 하나의 public class만 허용한다(에러)
class Hello4{} //4. public class가 없는 경우에는 어느 클래스가 명칭이 되더라도 상관없다.
class hello5{} //5. 자바는 대소문자를 구분하므로 소스파일 명칭과 일치할 수 있도록 해야한다(값 불일치 에러)
'Java > Basic' 카테고리의 다른 글
연산자 (0) | 2021.02.18 |
---|---|
형변환(Casting) (0) | 2021.02.17 |
기본형(primitive type) (0) | 2021.02.16 |
화면 출력과 화면 입력 (0) | 2021.02.14 |
변수와 상수 (0) | 2021.02.13 |
댓글