본문 바로가기
Java/Basic

객체지향의 개념과 클래스, 객체

by 최로이 2021. 1. 18.

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

댓글