티스토리 뷰

🌏 이것이 자바다 1권 참고 

 


1. Class(클래스) 

객체(Object) 란?

  • 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서자신의 속성을 가지고 있고
    다른 것과 식별 가능한 것을 의미한다.

  • 객체는 속성과 동작으로 구성되어 있는데, 자바에서는 이 속성과 동작들을
    각각 필드(field)메소드(method)라고 부른다.

  • 현실 세계의 객체를 소프트웨어 객체로 설계하는 것을 객체 모델링(Object Modeling)이라고 한다. 

📌객체와 클래스

  • 자바에서는 설계도가 바로 클래스(class)이다. 

  • 클래스에는 객체를 생성하기 위한 필드와 메소드가 정의되어 있다. 

  • 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스(instance)라고 한다. 

  • 클래스로부터 객체를 만드는 과정을 인스턴스화라고 한다. 

  • 하나의 클래스로부터 여러 개의 인스턴스를 만들 수 있다. 

🔗객체 지향 프로그래밍 개발의 3단계

  1. 클래스 설계 -> 사용할 객체 생성 -> 생성된 객체 이용

📌클래스 선언

  • 작성 규칙

    • 하나 이상의 문자로 이루어져야 한다. ex) Car, SportsCar

    • 첫 번째 글자는 숫자가 올 수 없다. ex) 3Car(x)

    • '$', '_' 이외의 특수 문자는 사용할 수 없다. ex) $Car, _Car, @Car(x), #Car(x)

    • 자바 키워드(예약어)는 사용할 수 없다. ex) int(x), for(x)

  • 클래스 이름은 한글이든, 영어든 상관 없지만 한글로 만드는 경우는 거의 없다. 

  • 클래스 이름은 영어 대소문자를 구분한다. 

  • 반드시 "클래스이름.java"로 소스 파일을 생성해야 한다. 

  • public class 클래스이름{} ==> 여기서 public class 키워드는 클래스를 선언할 때 반드시 소문자로 작성.  

  • 주의사항 => 파일 이름과 동일한 이름의 클래스 선언에만 public 접근 제한자를 붙일 수 있다. 

    --> 동일하지 않다면 컴파일 에러가 생김. 

📌객체 생성과 클래스 변수

new 클래스이름();
  • new는 클래스로부터 객체를 생성시키는 연산자이다. 

  • new 연산자로 생성된 객체는 메모리 힙(heap) 영역에 생성된다. 

  • heap영역에 객체를 생성한 후, 객체의 주소를 리턴한다. 

  • 이 주소를 참조 타입인 클래스 변수에 저장해 두면, 변수를 통해 객체를 사용할 수 있다. 

클래스 변수 = new 클래스();
public class Book{
} //Book 클래스 따로 생성

public class BookExample{
	public static void main(String[] args){
    	Book b1 = new Book(); //b1 : 첫 번째 Book 클래스 인스턴스(객체)
        System.out.println("b1 변수가 Book 객체를 참조합니다.");
        
        Book b2 = new Book(); //b2 : 두 번째 인스턴스(객체)
        System.out.println("b2 변수가 또 다른 Book 객체를 참조합니다.");
    }
}
  • Book과 BookExample 클래스의 용도?

    • 하나는 라이브러리(API: Application Program Interface)용, 다른 하나는 실행용이다. 

    • 라이브러리 클래스는 다른 클래스에서 이용할 목적으로 설계된다. 

    • 프로그램 전체에서 사용되는 클래스가 100개라면 99개는 라이브러리이고, 단 하나가 실행 클래스이다.


📍클래스의 구성 멤버에 관련한 내용은 다음편에서!

댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31