Daily coding

Java Basic : day 8 - OOP: 생성자 본문

Language/Java_basic

Java Basic : day 8 - OOP: 생성자

sunnnkim 2019. 11. 27. 20:03

constructor : 생성자

 

 
   - 참조 : c언어의 structure 
  
   - 클래스명과 같은 메소드
   - 리턴값이 없다
   - Overloadding이 가능
   - 클래스변수 생성시에 자동 호출
   - 별도의 호출은 불가능하다 (1회용)
   - 생략이 가능 (정의하지 않았어도 자바에서 자동으로 기본 생성자 생성해줌)
   - 초기값 설정에 많이 사용됨
   - 생성자는 오버로딩이 가능하다 (오버로딩으로 초기 필드 값을 지정할 수 있음)
   - 생성자에 파라미터를 설정하여 내부의 멤버변수에 접근할 수 있다
  
  
   * destructor : 소멸자
   * - 자동호출
   * - 자바에서는 따로 없음(Garbage collector가 담당) 
  
 
         
public static void main(String[] args) {

         MyClass2 cls = new MyClass2();
         MyClass2 cls2 = new MyClass2(13);
         MyClass2 cls3 = new MyClass2(13.2f);


}

}

class MyClass2{

         private float number;


         // 생성자
         public MyClass2() {
                  System.out.println("MyClass2() 생성자호출");
         }

         // 생성자 오버로딩
         public MyClass2(int i) {
                  System.out.println("MyClass2(int i) 생성자호출 ");
         }
         // 생성자의 파라미터로 클래스 멤버변수 값에 접근할 수 있다
         // 생성자의 파라미터로 데이터를 가지고 들어오고
         // this 예약어로 클래스 내부 변수에 접근하여 데이터를 넣을 수 있음
       

        public MyClass2 (float number) {
                this.number = number;
                System.out.println("MyClass2 (float number) 생성자 호출");
                System.out.println("number = " + this.number);

}


}