본문 바로가기
dev, tech/Windows P

클래스의 생성자 실행 순서

by 구띵 2006. 1. 16.

기본 생성자 실행 순서

 

static void Main(string[] args)
  {

           MovieTicket mt = new MovieTicket(5);


  }

  public class Ticket
  {
           public Ticket()
   {
    Console.WriteLine("public Ticket() 생성자가 실행되었습니다.");
   }
   public Ticket(int howMany)
   {
    Console.WriteLine("public Ticket(int howMany) 생성자가 실행되었습니다.");
   }
  }// end of Ticket class

  public class MovieTicket:Ticket
  {
   public MovieTicket()
   {
    Console.WriteLine("public MovieTicket() 생성자가 실행되었습니다.");
   }
   public MovieTicket(int howMany)
   {
    Console.WriteLine("public MovieTicket(int howMany) 생성자가 실행되었습니다.");
   }
   public MovieTicket(int howMany,int seatNo)
   {
    Console.WriteLine("public MovieTicket(int howMany,int seatNo)생성자가 실행되었습니다.");
   }

 

  }//end of Class1 class


 
 }

 

실행결과

 

public Ticket() 생성자가 실행되었습니다.
public MovieTicket(int howMany) 생성자가 실행되었습니다.

 

 

분석 :

조상 클래스의 기본 생성자가 실행됨을 볼 수 있다.

자식 클래스의 생성자 중에서 인수가 일치하는 public MovieTicket(int howMany) 생성자가 실행됨을 볼 수 있다.

이렇게 조상 클래스가 존재할 경우 그 조상 클래스의 기본 생성자가 우선 먼저 실행된다.

 

그렇다면, 만약 조상 클래스의 기본 생성자가 아닌 다른 생성자를 호출하고 싶다면 어떻게 해야할까?

 

base 키워드의 사용 ( 조상 클래스의 생성자를 지정)

 

 

'dev, tech > Windows P' 카테고리의 다른 글

[펌] 4_13 this 키워드  (0) 2006.01.16
[펌] 4_17 base 키워드  (0) 2006.01.16
클래스에 대한 깊은 이해 - 접근 권한 / 상속 권한  (0) 2006.01.16
다형성  (0) 2006.01.16
enumerations  (0) 2006.01.14

댓글