27/04/2016

[C# .NET] Classes and Objects


Trong ngôn ngữ lập trình hướng đối tượng (OOP), class chính là một data-type định nghĩa các biến và phương thức cho khai báo một object. Hay nói cách khác, class định nghĩa data-type cho object, tuy nhiên class không phải là một object. Một object là một thực thể dựa trên class, hay còn gọi là một khởi tạo (instance) của một class.

Value Types

Trong ngôn ngữ C#, có 2 cách để lưu trữ dữ liệu là bằng ReferenceValue.
Một vài kiểu data-type như int, double được sử dụng để khai báo các biến, đó chính là value-type. Chúng được lưu trữ trong bộ nhớ (memory) có địa chỉ được gọi là Stack.

References Types

Kiểu reference dùng để lưu trữ các đối tượng (object). Khi bạn khởi tạo một đối tượng, dữ liệu của nó được lưu trữ trên bộ nhớ được gọi là Heap. Nhưng địa chỉ (address) dẫn đến nó được lưu ở Stack, nó chứa địa chỉ (memory address) đến đối tượng thực tế trên Heap. Đó là lý do gọi là reference-type...

  • Stack: sử dụng để cấp phát bộ nhớ tĩnh (static memory), bao gồm cho tất cả value-types của bạn.
  • Heap: sử dụng để cấp phát bộ nhớ động (dynamic memory), bao gồm các objects tùy chỉnh mà có thể cần thêm bộ nhớ trong quá tình hoạt động (runtime).

Tham khảo thêm:

Created: 37/04/2016

Share

Happy Reading!

[C# .NET] Classes and Objects
4/ 5
Oleh

Buzz!

Stay updated via email new newsletter

Don't
Use obscene or offensive language.
Personally attack people, their edits, or their comments.
Rant or otherwise harass, abuse, or intimidate others.
Post anything you don't want the world to see. This is a public space.
Infringe copyright.