티스토리 뷰

JAVA

[Java] 클래스(class)의 개념

단미라이프 2022. 3. 22. 22:39
반응형

1. 클래스의 개념

 

클래스(class)와 객체

 

  • 자바에서 클래스란 객체를 만들어 내기 위한 설계도 또는 틀과 같은 의미로 사용됩니다.
  • 클래스 모양 그대로 생성된 실체를 객체라고 합니다.
  • 쉽게 이해해하자면 붕어빵 틀과 붕어빵 사이의 관계를 클래스와 객체라고 볼 수 있다. 붕어빵 틀은 자바 클래스이고, 붕어빵은 자바 객체이다. 붕어빵은 틀의 모양대로 만들어지지만 앙코붕어빵, 슈크림붕어빵, 크림치즈붕어빵 등 서로 조금씩 다릅니다.

 

클래스와 객체의 관계

 

 

 

인스턴스(instance)
  • 클래스로부터 객체를 선언하는 과정을 클래스의 인스턴스화라고 합니다.
  • 자바에서는 하나의 클래스로부터 여러개의 인스턴스를 생성할 수 있습니다.

 

 

 

2. 클래스의 구성

  • 자바 클래스는 class 키워드를 사용하여 선언한다.
  • 클래스의 구성요소를 멤버(member)라고 부르며, 멤버는 속성을 표현하는 필드(filed)와 기능을 나타내는 메소드(method)를 가집니다.
  • 또한 클래스는 생성된 객체의 필드를 초기화해주는 메소드인 생성자(Constructor)를 가집니다.
접근제어자 class 클래스이름 {

    접근제어자 필드1의타입 필드1의이름;

    접근제어자 필드2의타입 필드2의이름;

    ...

    접근제어자 메소드1의 원형

    접근제어자 메소드2의 원형

    ...

};

 

필드(field)

 

  • 객체 내에 값을 저장할 멤버 변수를 필드라고 부른다.
  • 클래스 내에서 선언된 위치에 따라 클래스변수(static variable), 인스턴스변수(instance variable), 지역변수(local variable)로 구분된다.

 

메소드(method)

 

  • 메소드는 함수이며 객체의 행동을 구현한다.

 

생성자(constructor)

 

  • 클래스의 이름과 동일한 메소드를 생성자라고 한다.
  • 생성자는 객체가 생성될 때 자동으로 호출되는 특별한 메소드이다.
  • 즉, 자바에서 객체의 생성과 동시에 인스턴스 변수를 원하는 값으로 초기화할 수 있는 메소드를 생성자라고 한다.

 

 

 

3. 클래스의 선언

자바에서 클래스는 다음과 같이 접근제어자와 함께 class 키워드를 사용하여 선언합니다.

//접근권한자 클래스선언 클래스이름
public class Circle {	// 원 클래스 선언

	public int radius;	// 원의 반지름 필드
	public String name;	// 원의 이름 필드
    
	public Circle() {	// 원의 생성자 메소드
	}
    
	public double getArea() {	// 원의 면적 계산 메소드
		return 3.14*radius*radius
	}
    
}

 

 

4. 인스턴스 생성

위와 같이 선언된 클래스를 가지고 Circle객체의 인스턴스를 생성할 수 있다.

 

 

레퍼런스 변수 선언

 

Circle pizza;	//객체 참조를 위한 참조변수 pizza 선언
  • Circle 객체를 생성한 것이 아니라, 변수 pizza는 Circle클래스의 객체에 대한 주소를 가지는 변수일 뿐이다.

 

new연산자로 객체 생성

 

pizza = new Circle();
  • new 연산자를 이용해 객체를 생성한다.
  • 생성된 Circle객체의 주소를 pizza 변수에 대입한다.

 

레퍼런스 변수 선언과 동시에 객체 생성

 

Circle pizza = new Circle();
  • 레퍼런스 변수 선언과 객체 생성은 동시에 할 수 있다.

 

 

5. 객체 멤버 접근

객체의 멤버에 접근할 때는 레퍼런스 변수 뒤에 .(점) 연산자를 붙인다.

pizza.radius = 50;

 

반응형
댓글
반응형
공지사항