[Java] Constructor(생성자 메서드)
Constructor(생성자 메서드)
- 객체를 생성할 때 사용되는 메서드
- 객체 생성 후 객체의 초기화를 하는 역할 수행
- 특징
- 클래스 이름과 동이한 메서드
- 메서드의 return type이 없다(void 아님)
- public 접근 권한을 가진다.(단, private 생성자도 있음)
- 생성자가 없을 때는 기본 생성자가 만들어 진다.
기본 생성자는public BookVO2() {}
main 부
import kr.tpc.BookVO2;
public class TPC12 {
public static void main(String[] args) {
BookVO2 b1=new BookVO2();
BookVO2 b2=new BookVO2("자바", 20000, "길벗", 790);
System.out.print(b2.title+"\t");
System.out.print(b2.price+"\t");
System.out.print(b2.company+"\t");
System.out.println(b2.page);
}
}
class 부
package kr.tpc;
public class BookVO2 {
public String title;
public int price;
public String company;
public int page;
// default constructor method(원래는 생략)
// 객체지향에서는 함수의 이름이 같아도 argument의 개수 or type이 다르면 서로 다른 함수로 인식해서 error가 발생하지 않는다.
// default constructor method
// # 1
public BookVO2() {
this.title="제목";
this.price=00000;
this.company="출판사";
this.page=000;
} // 앞에 내용들은 없어도 된다.
//warn 생성자가 하나 만들어져 있으면 default 생성자는 자동으로 만들어지지 않는다!!!!
//그렇기 때문에 바로 위에 constructor method 만드는 작업 해줘야 한다
// # 2
// constructor method의 Overloading
public BookVO2(String title, int price, String company, int page) {
// 초기화 작업
this.title=title;
this.price=price;
this.company=company;
this.page=page;
}
}
#1은 b1에,
#2는 b2에 대응된다.
#1, #2가 모두 없을 경우(아무런 생성자가 없을 때), public BookVO2() {}
라는 기본생성자가 생성된다.
#1이 있으면 b1이 돌아가고
#2가 있으면 b2가 돌아간다.
Author And Source
이 문제에 관하여([Java] Constructor(생성자 메서드)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yule_gpark/Constructor와-getter-setter저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)