본문 바로가기

개발/JAVA

2. 기본문법 (4) 객체지향 개요

1. 객체 모델링

객체 : 아이언맨 슈트
속성 : 키185, 몸무게90, 색상 Red, 비행여부-가능
행동 : 로켓발사, 비행하기, 레이저 발사

개념과 구성요소를 서로 비교해보면,
* 객체 = 상태 + 행동
* 클래스 = 속성 + 메소드


1) 클래스(class)
클래스는 객체를 만들어 내기 위한 설계도 혹은 틀을 말하며 속성을 표현하는 필드(field)와 기능을 표현하는 메소드(method)를 가진다.

2) 객체(object)
소프트웨어 세계에 구현할 대상이며 클래스에 선언된 모양 그대로 생성된 실체를 말한다. 객체는 모든 인스턴스를 대표하는 포괄적 의미, 클래스로 구현한 모든 대상

3) 메소드(method)
c언어에서의 함수(function)역할과 비슷하게 하며 어떠한 특정 작업을 수행하기 위한 명령문의 집합체이다. c에서의 함수와 java에서의 메소드가 다른 점은 c와 java의 언어적 특징의 차이에서 부터 비롯되는데 c는 절차적인 언어인 반면 java는 객체지향 언어이므로 c언어와 달리 메소드의 나열 순서가 중요하지 않다는 점이다.

- 메소드 종류
메소드 종류에는 클래스 메소드인스턴스 메소드로 나뉜다.
클래스 메소드의 경우가 위에서 설명한 메소드 형식이며 인스턴스 메소드의 경우에는 클래스에 기능을 추가하기 위한 메소드이다.


4) 인스턴스(instance)
설계도를 바탕으로 소프트웨어 세계에 구현된 구체적인 실체이며 객체를 소프트웨어 상에서 실체화 하면 인스턴스이다.



2. 클래스 다이어그램
프로그램 언어로 코딩할때 사용하는 자료

1) 변환예제
- 변수 : 변수이름 : 변수타입
  ex) 키 : 185, 몸무게 : 90, 색상 : Red, 비행여부: 가능
- 메소드 : 메소드 이름()
  ex) 로켓발사(), 비행하기(), 레이저 발사()

2) 자바 기본 구조

 - 

class 클래스이름 { 
  변수선언 
  메소드선언
 }