본문 바로가기
Java

JAVA 객체지향에 대한 이해 (쉬운 설명과 예제)

by Status Code 2023. 3. 7.

자바(Java)는 객체 지향 프로그래밍 언어로, 객체 지향 프로그래밍의 기본적인 개념과 원리에 대해 알아보겠습니다.

객체 지향 프로그래밍은 현실 세계의 객체(Object)를 프로그램으로 모델링하여 문제를 해결하는 기법입니다. 자바에서는 객체를 클래스(Class)라는 설계도를 통해 생성합니다.

예를 들어, 학생(Student) 객체를 만든다고 가정해봅시다. 학생 객체에는 이름, 학번, 학과, 전화번호 등의 속성(Property)이 있을 수 있습니다. 이러한 속성은 클래스의 멤버 변수(Member Variable)로 정의됩니다.

public class Student {
  String name;
  int id;
  String major;
  String phoneNumber;
}

 

 

학생 객체는 또한 공부(study), 시험보기(takeExam), 학과 변경(changeMajor) 등의 동작(behavior)을 할 수 있습니다. 이러한 동작은 클래스의 멤버 함수(Member Function) 또는 메소드(Method)로 정의됩니다.

public class Student {
  String name;
  int id;
  String major;
  String phoneNumber;
  
  public void study() {
    System.out.println(name + " is studying.");
  }
  
  public void takeExam() {
    System.out.println(name + " is taking an exam.");
  }
  
  public void changeMajor(String newMajor) {
    System.out.println(name + " changed major to " + newMajor + ".");
    major = newMajor;
  }
}

 

 

이제 학생 객체를 생성해보겠습니다.

Student student1 = new Student();
student1.name = "John";
student1.id = 12345;
student1.major = "Computer Science";
student1.phoneNumber = "010-1234-5678";

student1.study(); // John is studying.
student1.takeExam(); // John is taking an exam.
student1.changeMajor("Information Engineering"); // John changed major to Information Engineering.

 

위 예시를 통해, 객체는 속성과 동작을 갖는 것을 알 수 있습니다. 또한, 객체는 클래스의 인스턴스로 생성되며, 클래스는 객체의 설계도라는 것을 알 수 있습니다.

객체 지향 프로그래밍은 현실 세계의 객체를 모델링하여 프로그램을 작성하기 때문에 문제 해결의 정확성과 유지보수성이 뛰어나며, 코드의 재사용성도 높을 수 있습니다.

댓글