[C#] Tổng quan về hàm tạo constructor trong C#

Thảo luận trong 'Visual C#' bắt đầu bởi Trần Văn Cường, 6/9/16.

  1. Trần Văn Cường

    Trần Văn Cường I love CNTT Thành viên BQT Thành viên BQT

    Tham gia ngày:
    8/11/15
    Bài viết:
    3,693
    Đã được thích:
    43
    Điểm thành tích:
    48
    Giới tính:
    Nam
    Nghề nghiệp:
    Sinh Viên
    Nơi ở:
    Quảng Ninh thân yêu!
    Web:

    Hàm tạo (constructor)
    Công dụng

    Hàm tạo(constructer) cũng là một phương thức của lớp (nhưng khá đặc biệt) dùng để tạo dựng một đối tượng mới. Chương trình dịch sẽ cấp phát bộ nhớ cho đối tượng sau đó sẽ gọi đến hàm tạo. Hàm tạo sẽ khởi gán giá trị cho các thuộc tính của đối tượng và có thể thực hiện một số công việc khác nhằm chuẩn bị cho đối tượng mới.

    constructor-trong-c-sharp.png

    Cách viết hàm tạo
    Điểm khác của hàm tạo và các phương thức thông thường

    Khi viết hàm tạo cần để ý 3 sự khác biệt của hàm tạo so với các phương thức khác như sau:
    + Tên của hàm tạo: tên của hàm tạo bắt buộc phải trùng với tên của lớp.
    + Không khai báo kiểu cho hàm tạo.
    + Hàm tạo không có kết quả trả về.

    Sự giống nhau của hàm tạo và các phương thức thông thường

    Ngoài 3 điểm khác biệt trên, hàm tạo được viết như các phương thức khác:
    + Hàm tạo có thể được xây dựng bên trong hoặc bên ngoài định nghĩa lớp.
    + Hàm tạo có thể có đối hoặc không có đối.
    + Trong một lớp có thể có nhiều hàm tạo (cùng tên nhưng khác bộ đối).

    Dùng hàm tạo constructer trong khai báo
    · + Khi đã xây dựng các hàm tạo, ta có thể dùng chúng trong khai báo để tạo ra một đối tượng đồng thời khởi gán cho các thuộc tính của đối tượng được tạo. Dựa vào các tham số trong khai báo mà trình biên dịch sẽ biết cần gọi đến hàm tạo nào.

    · + Khi khai báo một biến đối tượng có thể sử dụng các tham số để khởi gán cho các thuộc tính của biến đối tượng.
    · + Khi khai báo mảng đối tượng không cho phép dùng các tham số để khởi gán.
    · + Câu lệnh khai báo một biến đối tượng sẽ gọi tới hàm tạo 1 lần
    · + Câu lệnh khai báo một mảng n đối tượng sẽ gọi tới hàm tạo n lần.

    Khi nào sử dụng static

    · static được dùng khi trong class có một thành phần ( thuộc tính, hoặc hàm ) là bất biến với mỗi đối tượng của lớp đó (cả đối với sự thay đổi giá trịcủa các thuộc tính). Khi đó bạn dùng khai báo static để tiết kiệm bộ nhớ

    · static còn có công dụng khác (đây cũng chính là một đặc tính của static ). Các hàm hay biến static chỉ có thể truy xuất được qua class, không thể gọi từ bât kì một đối tượng nào của lớp. các hàm static chỉ có thể thao tác với các biến, thuộc tính static.

    · Constructor va Destructor của class là ngoại lệ, các hàm bình thường khác không truy xuất được biến static.

    Khi nào sử dụng public


    Khi gán từ khóa này cho phương thức,trường, thuộc tính, các biến, lớp thì chúng sẽ được truy xuất và sử dụng công khai mà không có ràng buộc nào. Tuy nhiên bạn cần lưu ý nếu lớp không được khai báo public thì tất cả thuộc tính hay phương thức trong nó đều không thể truy xuất từ lớp khác.
    - Khi nào cần dùng Public:
    + Bạn muốn công khai một lớp cho các lớp khác truy xuất
    + Sử dụng cho các phương thức. Nếu đã cho lớp khác truy xuất thì các phương thức cần phải public thì lớp đó mới sử dụng được
    + Sử dụng cho get,set. Đây là hai thuộc tính quản lý đầu vào ra của các trường dữ liệu (field). Nếu không có mục đích khác thì thông thường ta sử dụng public để lấy dữ liệu và nhập dữ liệu thông qua get/set
    ..............
    + Và tất nhiên còn dùng trong việc khai báo biến, thông thường các biến cục bộ chỉ sử dụng private để bảo vệ thông tin.
     

    Bình Luận Bằng Facebook

    data-href="https://cnttqn.com/threads/c-tong-quan-ve-ham-tao-constructor-trong-c.2477.html"