2010-03-19 27 views

Trả lời

7

gần như không khác biệt giữa chúng. Việc gán trường sẽ xảy ra bên trong hàm tạo trong cả hai trường hợp. Có một sự khác biệt trong cách này happpens liên quan đến các nhà xây dựng lớp cơ sở mặc dù. Đi đoạn mã sau:

class Base 
{ 
    public Base() 
    { 

    } 
} 

class One : Base 
{ 
    string test = "text"; 
} 

class Two : Base 
{ 
    string test; 
    public Two() 
    { 
     test = "text"; 
    } 
} 

Trong trường hợp này cơ sở lớp constructor sẽ được gọi sau sự phân công lĩnh vực trong lớp One, nhưng trước sự phân công trong lớp Two.

+0

Cảm ơn câu trả lời chi tiết. –

2

Phiên bản đầu tiên cho phép bạn xác định nhiều nhà xây dựng mà không phải nhớ đặt = new SomeType() vào mỗi một.

Các vấn đề liên quan