클래스와 객체

MIN·2023년 9월 15일

Java

목록 보기
4/36
post-thumbnail
이 글은 자바의 정석 기초편을 공부한 내용을 토대로 작성한 글입니다.
혹시 잘못된 내용이 있을 시 댓글로 알려주시면 감사하겠습니다 ^U^

📌 클래스란?

클래스란, 객체를 정의해 놓은 것이다.

이 말을 수업에서 처음 들었을 때 도대체 무슨 뜻인지를 몰랐다.
한글인데 이해가 전혀 안됨;;

이후에 자바의 정석 기초편을 읽고나서야 조금씩 이해가 되었다.
먼저 객체에 대해서 알아야 한다.


펜을 예시로 설명을 해보겠다.

클래스는 펜의 설계도
객체는 펜

우리가 객체인 펜을 정의해보자면 펜의 색깔, 크기, 글씨쓰기 등을 설명할 수 있을 것이다. 이러한 것들이 모두 정의되어있는 것이 바로 펜의 설계도인 클래스인 것이다!

📌 객체의 구성요소

클레스에 정의되어있는 객체는 속성과 기능 이렇게 2가지의 구성요소로 이루어져있다. 따라서 객체는 속성과 기능의 집합이라 할 수 있는데 이 각각을 그 객체의 멤버(member)라고 한다.


객체지향 프로그래밍에서는 속성과 기능을 각각 변수와 메서드로 표현한다.

속성 (property) -> 멤버변수 (variable)
기능 (function) -> 메서드 (method)

펜으로 다시 예를 들어보면

  • 속성 : 색깔, 길이, 두께
  • 기능 : 글씨 쓰기
public class Pen {
	
    String color;	// 색깔 속성
    int thickness;	// 두께 속성
    
    // 그리기 기능
    void drawing() { System.out.println("글씨 쓰기"); }
}

이렇게 클래스까지 한 번 만들어 보았다.


위 클래스는 Pen이란 객체를 생성하는 것이 목표이므로 이 설계도를 이용해 Pen을 생성해보도록 하겠다.

이때 클래스로부터 만들어진 객체를 인스턴스(instance)라고 한다.
(객체를 인스턴스라고 생각해도 좋다는 의미!)

public class Pen {	
    String color;	// 색깔 속성
    int thickness;	// 두께 속성
    
    // 그리기 기능
    void drawing() { 
    System.out.println(color+" "+thickness+"mm펜으로 글씨 쓰기~"); 
    }
}


public class RealPen {
	public static void main(String[] args) {
    	Pen p = new Pen();	// Pen객체 p생성
        p.color = "파란색";
        p.thickness = 0.5;
        p.drawing();
     }   
}
        

위와같이 작성 후 결과값으로
파란색 5mm펜으로 글씨 쓰기~ 가 출력된다.
이로써 객체인 Pen을 생성하여 이 객체의 속성과 기능을 사용해 보았다.


객체란 기능과 속성으로 이뤄져 있으며
이 객체를 정의하는 클래스는 기능과 속성 --> 멤버변수와 메서드의 집합

꼭 기억하자!!

profile
기초부터 시작하는 감쟈 ※ 소개글 확인해주세요!! ※

0개의 댓글