자바는 객체지향 언어입니다. 클래스와 객체를 통해서 프로그램을 개발해 나가야 됩니다.
이번 시간에 클래스와 객체에 대해서 공부하겠습니다.
클래스와 객체
클래스는 '상태'와 '행위'를 갖고 있는 설계도입니다. 그리고 이 클래스를 이용해서 객체를 만들 수 있습니다. 물론 해당 클래스를 사용하여 여러 객체를 만들 수 있습니다.
예를 들어, 사람을 정의한 클래스가 있습니다. 해당 클래스는 '이름'이라는 '상태'를 갖고 있고, '뛰다'라는 '행위'를 갖고 있습니다. 그리고 사람 클래스를 통해서 여러 사람을 만들 수 있습니다. Java로 코딩을 하면 다음과 같습니다.
// Person Class
public class Person {
String name;
// 아래 메서드는 생성자로 다음에 이어서 설명하겠습니다.
public Person(String name) {
this.name = name;
}
public void run() {
System.out.println("뛰다");
}
}
위와 같이 사람에 해당하는 클래스를 정의해줍니다. name이라는 상태와 run이라는 행위를 갖고 있습니다.
// main process
public class MainProcess {
public static void main(String[] args) {
Person geumyong = new Person("geumyong");
Person hwayoung = new Person("hwayoung");
geumyong.run();
hwayoung.run();
}
}
해당 클래스로 new 키워드를 사용하여 두 사람을 만들었습니다. 그리고 이름은 각각 geumyong, hwayoung으로 정해집니다. 이렇게 클래스로 생성된 것을 객체 혹은 인스턴스라고 합니다. Java는 다음과 같이 클래스와 객체를 통해 코딩이 이루어집니다.
생성자 (constructor)
위 클래스 예시를 확인하면 생성자 함수가 있습니다. 생성자 함수를 통해서 객체를 만들 수 있습니다. 매개 변수가 없는 생성자의 경우 '기본 생성자'라고 합니다. 기본 생성자는 클래스를 컴파일할 때 자동으로 만들어집니다. 위 예시와 같이 인스턴스 변수에 값 할당을 하기 위해서 매개변수를 통해 값을 전달할 수 있습니다.
'JAVA' 카테고리의 다른 글
객체 지향의 4대 특성 (0) | 2021.10.03 |
---|---|
객체 지향 설계의 5가지 원칙 (SOLID) (0) | 2021.10.03 |
자바 프로그램 개발과 구동 (0) | 2021.09.14 |
Java 변수 (0) | 2021.09.10 |
객체 지향 언어란? (Object Oriented Language) (0) | 2021.06.17 |