Nuke Olaf - Log Store

[JAVA] 자바 - 생성자란 무엇인가? 본문

Language/[JAVA]

[JAVA] 자바 - 생성자란 무엇인가?

NukeOlaf 2019. 11. 23. 15:54

생성자에서 "생성"을 사전에서 찾아보았다.

사전에서는 생성자를 다음과 같이 정의한다.

사물이 생겨남, 또는 사물이 생겨 이루어지게 함

 

나의 정의 - 생성자란?

생성자란, 객체가 처음 생성될때 클래스 내의 변수들의 값이 초기화되게 하는 것이다.

생성자를 프로그래머가 만들지 않는다면, 객체의 변수들은 기본 생성자를 통해 아무런 변화 없이 클래스에 적혀있는대로 만들어진다.

하지만, 객체를 처음 생성할 때부터 객체의 변수에 어떤 값을 주고 싶다면, 생성자를 직접 정의하면 된다.

객체를 처음 생성할 때, 내가 정의한 생성자의 매개변수에 값을 대입하면, 그 인자에 따라 객체의 필드가 초기화 된다.

 

< 생성자의 특징 >

모든 클래스는 인스턴스화할 때 생성자를 사용한다.

생성자는 객체를 처음 생성할때, 필드(클래스 내의 attribute(속성))를 초기화하는 역할을 수행한다.

생성자를 프로그래머가 만들지 않으면, 매개변수가 없는 생성자가 컴파일할 때 자동으로 만들어진다.

매개변수가 없는 생성자를 기본생성자라고 한다.

생성자를 하나라도 프로그래머가 만들었다면 기본생성자는 자동으로 만들어지지 않는다.

  • 반환값이 없는 메소드는 생성자가 유일하다. 
    생성자는 인스턴스를 생성해주는 역할을 하는 특수한 메소드라고 할 수 있다. 반환 값이 없기 때문에 return도 사용하지 않고, 반환 값을 메소드 정의에 포함 시키지도 않는다.
  • 생성자의 이름은 클래스의 이름과 동일하다.
    자바에서 클래스의 이름과 동일한 메소드는 생성자로 사용하기로 약속되어 있다.
  • 생성자는 매개변수에 따라서 여러 개를 만들 수 있다. 이중에 필요에 따라 객체를 생성시에 선택할 수 있다.

 

https://opentutorials.org/module/516/5519

 

초기화와 생성자 - Java

초기화 회사에 출근해서 업무를 시작하기 전에 제일 먼저 하는 일이 아마 책상 정리일 것이다. 커피를 내리는 경우도 있을 것이고, 컴퓨터 부팅을 시작하기도 할 것이다. 즉 어떤 일을 시작하기 전에 준비를 하게 되는데 이것을 다른 말로 초기화라고 한다.  객체 지향 프로그래밍도 초기화에 해당하는 기능이 제공되는데 이것을 생성자(constructor)라고 한다. 앞에서 살펴봤던 계산기 예제를 보자. 객체를 이용하기 위한 로직은 아래와 같다. Calculator

opentutorials.org

https://programmers.co.kr/learn/courses/5/lessons/168

 

자바 입문 - 생성자 | 프로그래머스

- 2018.1.15 10:21 1

programmers.co.kr

http://blog.naver.com/PostView.nhn?blogId=heartflow89&logNo=220955879645

 

[JAVA/자바] 생성자(Constructor)와 초기화

이전 포스팅에서 인스턴스를 생성할 때 "클래스 객체변수 = new 클래스();" 라는 구문을 사용하고 이때 "클...

blog.naver.com

https://www.opentutorials.org/module/2495/14065

 

객체의 초기화와 생성자 - Java 기본 과정

초기화 어떤 일을 시작하기 전에 준비를 하게 되는데 이것을 다른 말로 초기화라고 한다. 객체 지향 프로그래밍도 초기화에 해당하는 기능이 제공되는데 이것을 생성자(constructor)라고 한다. 즉 객체를 생성할 때 항상 실행되며, 맨 처음 실행되는 메소드이다. Calculator c1 = new Calculator(); // 생성자가 호출됨.  c1.setOprands(10, 20); c1.sum(); c1.avg(); Calculator class를

www.opentutorials.org

 

Comments