Tính đóng gói (encapsulation) trong C#

Trong các bài học C# trước, Taimienphi.vn đã giới thiệu cho bạn về câu lệnh điều kiện trong C# và vòng lặp (loop) trong C# là gì. Trong bài viết dưới đây Taimienphi.vn sẽ giới thiệu tiếp cho bạn về tính đóng gói (encapsulation) trong C#.

Để tìm hiểu rõ hơn về tính đóng gói (encapsulation) trong C#, bạn đọc cùng tham khảo tiếp bài viết dưới đây của Taimienphi.vn nhé.

tinh dong goi (encapsulation) trong c#

Tính đóng gói (encapsulation) trong C#
 

Mục Lục bài viết:
1. Tính đóng gói (encapsulation) trong C#.
2. Encapsulation sử dụng accessor và mutator.
3. Encapsulation sử dụng thuộc tính (property).
3.1. Thuộc tính chỉ đọc.
3.2. Thuộc tính chỉ ghi.

1. Tính đóng gói (encapsulation) trong C#

Trong C#, Encapsulation là quá trình kết hợp các dữ liệu thành viên và các hàm thành viên vào một đơn vị. Lớp (class) trong C# là ví dụ cho Encapsulation, vì lớp sẽ kết hợp các loại dữ liệu thành viên và các hàm thành viên vào một đơn vị.

Về cơ bản, tính đóng gói (encapsulation) trong C# được sử dụng để ngăn chặn việc thay đổi mã (dữ liệu) vô tình từ bên ngoài các hàm. Bằng cách định nghĩa các lớp với thuộc tính trong C# để bảo vệ dữ liệu không bị lỗi ngẫu nhiên.

2. Encapsulation sử dụng accessor và mutator

Nếu các lớp được định nghĩa với thuộc tính thì lớp đó sẽ được đóng gói, và không cho phép người dùng truy cập trực tiếp các trường, thay vào đó người dùng sẽ phải sử dụng các hàm getset để đọc hoặc ghi dữ liệu dựa trên các yêu cầu.

Dưới đây là ví dụ về định nghĩa lớp đóng gói bằng cách sử dụng các thuộc tính với các get accessor và set accessor:

tinh dong goi encapsulation trong c 2

Trong đoạn mã trên, bạn có thể thấy chúng ta định nghĩa một biến với access modifier riêng tư và hiển thị các biến đó công khai bằng cách sử dụng các thuộc tính get accessorset accessor.

Trong trường hợp nếu muốn thực hiện bất kỳ sửa đổi nào, sau đó định nghĩa các biến, bạn có thể thực hiện điều này bằng cách sử dụng các thuộc tính get accessor và set accessor.

3. Encapsulation sử dụng thuộc tính (property)

Thuộc tính (property) là tính năng ngôn ngữ mới được giới thiệu trong C#. Chỉ có một số ít ngôn ngữ hỗ trợ thuộc tính này. Các thuộc tính trong C# giúp bảo vệ một trường trong lớp bằng các đọc và ghi trường này. Tính đóng gói (Encapsulation) có thể thực thi mượt hơn với các thuộc tính.

Để hiểu rõ hơn, bạn đọc cùng tham khảo tiếp ví dụ dưới đây:

tinh dong goi encapsulation trong c 3

Ví dụ trên minh họa sử dụng tính đóng gói (Encapsulation) bằng cách sử dụng các thuộc tính. Thuộc tính bao gồm get accessor và set accessor. Get accessor trả về giá trị của một số trường thuộc tính. Set accessor thiết lập các giá trị của một số trường thuộc tính với nội dung của giá trị. Các thuộc tính có thể thực hiện chỉ đọc. Điều này có thể được thực thi bằng cách chỉ triển khai get accessor trong thuộc tính.

3.1. Thuộc tính chỉ đọc

tinh dong goi encapsulation trong c 4

Trong ví dụ trên minh họa cách triển khai thuộc tính chỉ đọc. Lớp ReadDepartment bao gồm thuộc tính Departname chỉ triển khai get accessor, giữ nguyên set accessor. Lớp đặc biệt này bao gồm một hàm dựng (constructor), chấp nhận tham số chuỗi. Phương thức Main của lớp ReadDepartmain tạo một đối tượng mới tên d.

Việc khởi tạo đối tượng d sử dụng hàm dựng của ReadDepartment, lấy tham số chuỗi. Vì chương trình trên chỉ đọc nên chúng ta không thể thiết lập giá trị cho trường Departname, và chỉ đọc hoặc nhận giá trị của dữ liệu từ trường.

Ngoài ra các thuộc tính cũng có thể thực hiện chỉ ghi, bằng cách chỉ triển khai set accessor trong thuộc tính.

3.2. Thuộc tính chỉ ghi

tinh dong goi encapsulation trong c 5

Trong ví dụ trên minh họa cách triển khai thuộc tính chỉ ghi. Lớp WriteDepartment bao gồm thuộc tính Departname chỉ triển khai set accessor, và giữ nguyên get accessor. Phương thức set accessor được thay đổi một chút vì nó in giá trị của Departname sau khi được gán.

https://thuthuat.taimienphi.vn/tinh-dong-goi-encapsulation-trong-c-43632n.aspx
Như vậy bài viết trên đây Taimienphi.vn vừa giới thiệu cho bạn về tính đóng gói (encapsulation) trong C#. Nếu có bất kỳ thắc mắc hoặc câu hỏi nào cần giải đáp, bạn đọc vui lòng để lại ý kiến của mình trong phần bình luận bên dưới bài viết, Taimienphi.vn sẽ giải đáp các thắc mắc của bạn sớm nhất có thể. Ngoài ra, bạn đọc có thể tham khảo thêm một số bài viết khác trên Taimienphi.vn để tìm hiểu rõ hơn về vòng lặp trong C# nhé.

Tác giả: Quỳnh Búp Bê     (4.0★- 3 đánh giá)  ĐG của bạn?

  

Bài viết liên quan

Cú pháp C# cơ bản
Vòng lặp (loop) trong C#
Nullable trong C# là gì?
Hằng và cách sử dụng hằng trong C#
Tính kế thừa (Inheritance) trong C#
Từ khoá liên quan:

tinh dong goi encapsulation trong c#

, Tính đóng gói (encapsulation) trong C#, C#,

SOFT LIÊN QUAN
  • Lập trình C++

    Giáo trình lập trình C++

    Lập trình C++ là tài liệu hướng dẫn học lập trình C++ - ngôn ngữ lập trình hướng đối tượng mở rộng từ ngôn ngữ C, cung cấp đến bạn các kiến thức về cách thức và tư duy lập trình. Đây là tài liệu rất hữu ích cho những ai ...

Tin Mới

  • Cách đăng ký tài khoản Turnitin, kiểm tra đạo văn

    Turnitin là phần mềm check, kiểm tra đạo hiệu quả, được nhiều giảng viên, người hướng dẫn luận văn và các em học sinh tại Việt Nam sử dụng. Bằng cách đăng ký tài khoản Turnitin và gửi lên bài làm cá nhân, bạn có thể dễ dàng kiểm tra, phát hiện các lỗi trích dẫn, sao chép không phù hợp và sửa đổi. Chi tiết cách đăng ký tài khoản, công cụ kiểm tra đạo văn đã được tổng hợp dưới đây, mời bạn đọc tham khảo.

  • Đăng nhập Trạng Nguyên Tiếng Việt trên máy tính, điện thoại

    Tiến hành đăng nhập Trạng Nguyên Tiếng Việt là cách duy nhất bạn có thể tham gia cuộc thi do Trạng Nguyên Tiếng Việt tổ chức dễ dàng. Cách đăng nhập sẽ được hướng dẫn trong bài viết sau, các bạn cùng tham khảo.

  • Bài thơ tình tháng 12, thơ tháng Chạp lãng mạn về tình yêu

    Cuối năm mang tới cảm xúc giao thoa giữa niềm vui, nỗi buồn và những khắc khoải khó gọi thành lời. Những bài thơ tình tháng 12 sẽ giúp ta giãi bày tâm trạng, bạn hãy tìm sự đồng điệu trong những vần thơ đầy cảm xúc này

  • Cách đăng ký Đột Kích trên điện thoại đơn giản nhất

    Tiến hành đăng ký Đột Kích ngay trên điện thoại của bạn, tại sao không? Đột kích hay Crossfire là tựa game bắn súng đối kháng hấp dẫn bậc nhất trên máy tính hiện nay, được nhiều game thủ đăng ký và cài đặt trên thiết bị của mình, bạn có thể đăng ký CF trên máy tính hoặc đăng ký đột kích trên điện thoại mà không gặp bất kỳ khó khăn nào.