개발자 승학

클래스(class)란 무엇인가? 본문

it/JAVA

클래스(class)란 무엇인가?

유승학 2018. 4. 26. 21:39

자바는 클래스들의 모임으로 구성된다.

객체 지향 언어에서는 프로그램 개발의 단위가 클래스이다.

필요한 클래스를 하나씩 만들어감으로써 전체 프로그램이 완성된다.


객체와 인스턴스는 무엇인가?

※ 객체와 인스턴스

클래스에 의해서 만들어진 객체를 인스턴스라고도 한다. 그렇다면 객체와 인스턴스의 차이는 무엇일까? 이렇게 생각 해 보자. Animal cat = new Animal() 이렇게 만들어진 cat은 객체이다. 그리고 cat이라는 객체는 Animal의 인스턴스(instance)이다. 즉 인스턴스라는 말은 특정 객체(cat)가 어떤 클래스(Animal)의 객체인지를 관계위주로 설명할 때 사용된다. 즉, "cat은 인스턴스" 보다는 "cat은 객체"라는 표현이 "cat은 Animal의 객체" 보다는 "cat은 Animal의 인스턴스" 라는 표현이 훨씬 잘 어울린다.


자바의 일반적인 코드 구조



하나의 소스 파일은 일반적으로 하나의 클래스를 포함한다.

하나의 클래스 안에는 여러 개의 메소드가 포함될 수 있으며, 하나의 메소등 안에는 여러 개의 문장이 포함될 수 있다.

위 문장은 Hello World! 를 출력하는 코드다.



간단히 예를 들어볼게요.

추운 겨울날 붕어빵가게가 있습니다.

붕어빵을 굽기 위해서는 붕어빵 틀이 필요하겟죠?

바로 붕어빵틀이 클래스(Class)입니다.

그리고 이 붕어빵틀로 만들어진 결과물이 붕어빵입니다. 즉 객체입니다.


메소드는 무엇일까요?


클래스에는 객체 변수와 더불어 메소드(Method)라는 것이 있다. 메소드는 클래스 내에 구현된 함수를 의미하는데 보통 함수라고 말하지 않고 메소드라고 말합니다.

public class Hello{                                                                   // 클래스 정의

public static void main(String[] args) {                                       // 메소드 정의

// TODO Auto-generated method stub    

System.out.println("Hello"); //문자열 출력

}                                                                                      // 메소드 정의

}                                                                                         //클래스 정의


클래스는 메소드와 변수로 이루어진다.

메소드는 프로그램이 해야 하는 작업을 적어놓는 곳이다.



Comments