CODING stroy

객체지향프로그래밍 - 객체, 필드, 생성자,메소드 본문

JAVA

객체지향프로그래밍 - 객체, 필드, 생성자,메소드

코코story 2022. 8. 7. 00:38

JAVA는 객체지향프로그래밍 언어이다.

객체란 무엇인가? 객체란 인스턴스를 의미하며 부품이다.

객체는 속성을 가지고 있고 현실의 모든 것은 객체가 될 수 있다.

사람 또한 객체지향프로그래밍처럼 사고를 한다.

 

자바에서 두 종류의 클래스가 있는데

실행되는 클래스(메인클래스) /

 라이브러리 클래스(설계 클래스)로 분리되어 있다.

 

다음은 메인클래스(실행되는 클래스)이다.

객체를 생성하는 문법

클래스명 변수명 = new 클래스명();

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

new연산자는 힙 영역에 객체를 생성시킨 후 객체의 주소(위치)를 리턴하도록 되어있다.

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

설계 클래스

3요소 - 필드, 생성자, 메소드 

 

필드엔 객체의 상태정보(데이터)를 담을 수 있다.

초기값이 설정되지 않은 필드들은 객체 생성 시 자동으로 기본 초기값으로 설정된다.

 

도트(.)연산자는 객체 접근 연산자

객체가 가지고 있는 필드나 메소드를 사용하고자 할 때 사용된다. 

this. 을 이용하면 객체 자신을 참조할 수 있다.

 

생성자 - 모든 클래스에 반드시 존재하며 여러 개 가질 수 있다(오버로딩)

생성자 오버로딩 : 매개변수의 타입, 순서, 개수가 다르면 가능

생성자는 리턴타입이 없으며 클래스 이름과 동일하다. 


필드 초기화 방법

1. 필드 선언시 초기값을 준다

2. 생성자에서 초기값을 준다.

- 모든 객체에서 동일한 데이터가 필요하다면 필드 선언 시 초기값을 주는 게 좋고

다양한 데이터가 필요하다면 생성자에서 초기화 해야한다.


메소드 - 리턴값이 없으면 리턴타입 void며 리턴 값이 있으면 타입이 필요하다.

관례적으로 소문자로 작성한다.

필드에 Mp랑 consumtion 추가해준 다음

 

생성자도 Mp 넣어서 다시 고치고

메소드 선언해줌

 

메소드설계문

 

 

메소드 실행문

생성된 객체에서 도트연산자를 이용하여 메소드 실행

리턴 타입이 있는 메소드는 리턴타입을  담아줄 변수가 필요하다.

매개변수 또한 객체의 필드에 접근함으로써 지정해줄 수 있다.


결과화면