Java에서 객체(Object)는 클래스(Class)를 통해 정의되며, 객체의 구성 요소는 주로 속성(Property)과 함수(Function)로 나눌 수 있습니다. 속성은 객체의 상태(state)를 나타내고, 함수는 객체의 동작(behavior)을 정의합니다.
1. 속성 (Property)
속성은 객체의 데이터를 저장하는 변수입니다. 속성은 클래스 내에서 필드(Field) 또는 멤버 변수(Member Variable)로 정의됩니다. 각 객체는 속성 값을 가질 수 있으며, 이를 통해 객체의 상태를 나타낼 수 있습니다.
예제
다음은 Car
클래스의 속성을 정의하는 예제입니다:
public class Car {
// 속성 정의
private String color;
private String model;
private int year;
// 생성자 (Constructor)
public Car(String color, String model, int year) {
this.color = color;
this.model = model;
this.year = year;
}
// 속성에 접근하기 위한 메서드 (Getter)
public String getColor() {
return color;
}
public String getModel() {
return model;
}
public int getYear() {
return year;
}
// 속성을 설정하기 위한 메서드 (Setter)
public void setColor(String color) {
this.color = color;
}
public void setModel(String model) {
this.model = model;
}
public void setYear(int year) {
this.year = year;
}
}
위 예제에서 color
, model
, year
는 Car
클래스의 속성입니다. 이러한 속성은 private
로 선언되어 있으며, 접근자(Getter)와 설정자(Setter) 메서드를 통해 접근하고 설정할 수 있습니다.
2. 함수 (Function)
함수는 객체의 동작을 정의하는 메서드(Method)입니다. 메서드는 클래스 내에 정의되며, 객체가 수행할 수 있는 작업을 나타냅니다. 메서드는 객체의 상태를 변경하거나 특정 작업을 수행하는 데 사용됩니다.
예제
다음은 Car
클래스의 함수를 정의하는 예제입니다:
public class Car {
private String color;
private String model;
private int year;
public Car(String color, String model, int year) {
this.color = color;
this.model = model;
this.year = year;
}
public String getColor() {
return color;
}
public String getModel() {
return model;
}
public int getYear() {
return year;
}
public void setColor(String color) {
this.color = color;
}
public void setModel(String model) {
this.model = model;
}
public void setYear(int year) {
this.year = year;
}
// 함수 정의
public void drive() {
System.out.println("The car is driving.");
}
public void stop() {
System.out.println("The car has stopped.");
}
}
위 예제에서 drive
와 stop
메서드는 Car
클래스의 함수입니다. 이러한 함수는 Car
객체의 동작을 정의합니다.
3. 속성(Property)과 함수(Function) 간의 관계
- 속성:
- 객체의 상태를 나타내는 변수입니다.
- 클래스 내에서 필드 또는 멤버 변수로 정의됩니다.
- 예:
color
,model
,year
등.
- 함수:
- 객체의 동작을 정의하는 메서드입니다.
- 클래스 내에서 정의되며, 객체의 상태를 변경하거나 특정 작업을 수행합니다.
- 예:
drive()
,stop()
,getColor()
,setColor()
등.
4. 클래스, 속성, 함수의 통합 예제
다음은 Car
클래스에서 속성과 함수를 통합한 예제입니다:
public class Car {
private String color;
private String model;
private int year;
public Car(String color, String model, int year) {
this.color = color;
this.model = model;
this.year = year;
}
public String getColor() {
return color;
}
public String getModel() {
return model;
}
public int getYear() {
return year;
}
public void setColor(String color) {
this.color = color;
}
public void setModel(String model) {
this.model = model;
}
public void setYear(int year) {
this.year = year;
}
public void drive() {
System.out.println("The car is driving.");
}
public void stop() {
System.out.println("The car has stopped.");
}
public static void main(String[] args) {
Car myCar = new Car("Red", "Toyota", 2020);
myCar.drive();
System.out.println("Color: " + myCar.getColor());
myCar.setColor("Blue");
System.out.println("Updated Color: " + myCar.getColor());
myCar.stop();
}
}
이 예제에서 Car
클래스는 속성(color
, model
, year
)과 함수(drive
, stop
, 접근자 및 설정자 메서드)를 모두 포함하고 있습니다.
main메서드에서는
Car` 객체를 생성하고, 그 객체의 속성과 함수를 사용하는 예를 보여줍니다.
'언어 > Java' 카테고리의 다른 글
[ Java ] 자바 버전별 특징 살펴보기 (0) | 2024.08.29 |
---|---|
[ Java ] JIT 컴파일러 알아보기 (0) | 2024.08.28 |
[ Java ] 클랙스와 객체, 그리고 인스턴스 이해 하기 (0) | 2024.07.31 |
[ Java ] 1~9까지 수로 중복되지 않은 8자리 숫자를 만드는 예제 (0) | 2024.07.31 |
[ Java ] JOptionPane 객체로 입력 받기 (0) | 2024.07.31 |