Sự khác nhau giữa struct và class trong C
Show
Sự khác biệt chính - Đẳng cấp so với cấu trúc trong C #C # là một ngôn ngữ lập trình hiện đại, đa năng và cấp cao được phát triển bởi Microsoft. Nó là một ngôn ngữ lập trình tương tự như Java. Nó chứa các tính năng lập trình mạnh mẽ như đại biểu, chỉ mục và Truy vấn tích hợp ngôn ngữ. Ưu điểm chính của C # là nó hỗ trợ Lập trình hướng đối tượng (OOP). OOP rất hữu ích để lập mô hình một chương trình hoặc một phần mềm phức tạp bằng cách sử dụng các đối tượng. Các đối tượng được tạo bằng cách sử dụng các lớp. Cấu trúc cũng là một khái niệm trong C #. Trong lập trình, một biến là một vùng lưu trữ có thể lưu trữ dữ liệu. Mỗi biến có một kiểu dữ liệu cụ thể để lưu trữ. Hai kiểu dữ liệu là kiểu giá trị và kiểu tham chiếu. Trong loại giá trị, một giá trị có thể được chỉ định trực tiếp. Một số ví dụ là int, char, float. Kiểu dữ liệu kiểu tham chiếu không lưu trữ dữ liệu thực tế, nhưng chúng chứa một tham chiếu đến biến. Lớp và Cấu trúc lưu giữ dữ liệu. Bài viết này thảo luận về sự khác biệt giữa Lớp và Cấu trúc trong C #. Các sự khác biệt chính giữa lớp và cấu trúc trong C # là, một lớp là kiểu dữ liệu kiểu tham chiếu trong khi cấu trúc là kiểu dữ liệu kiểu giá trị. 1. Tổng quan và sự khác biệt chính 2. Class trong C # là gì 3. Cấu trúc trong C # là gì 4. Điểm giống nhau giữa lớp và cấu trúc trong C # 5. So sánh song song - Lớp so với cấu trúc trong C # ở dạng bảng 6. Tóm tắt Class trong C # là gì?Trong OOP, mọi thứ được coi như một đối tượng. Trong một chương trình hoặc phần mềm, có bất kỳ số lượng đối tượng nào. Những đối tượng này không tồn tại biệt lập. Mỗi đối tượng tương tác với các đối tượng khác. Giao tiếp này xảy ra bằng cách sử dụng các hành động. Một đối tượng bao gồm các thuộc tính và phương thức. Các thuộc tính xác định các đặc tính của đối tượng và các phương thức xác định các hành động hoặc hành vi của đối tượng. Các đối tượng được tạo bằng cách sử dụng một lớp. Một lớp tương tự như một mô tả hoặc một bản thiết kế để tạo một đối tượng. Lớp có các thuộc tính và phương thức nên được chứa trong đối tượng. Tạo một đối tượng bằng cách sử dụng một lớp được gọi là khởi tạo. Để tạo một đối tượng kiểu Student, cần có một lớp gọi là Student. Để định nghĩa một lớp trong C #, từ khóa ‘class’ được sử dụng. Một lớp chứa một phương thức khởi tạo. Nó là một hàm đặc biệt được thực thi bất cứ khi nào tạo một đối tượng mới của lớp. Một hàm tạo có cùng tên với lớp. Nó không có kiểu trả về. Hàm tạo mặc định không có bất kỳ tham số nào. Hàm tạo được tham số hóa chứa các tham số. Một lớp cũng có thể chứa một hàm hủy. Nó là một hàm đặc biệt thực thi khi một đối tượng của lớp vượt ra khỏi phạm vi. Destructor có cùng tên với tên lớp và bắt đầu bằng ~. Nó không trả về bất kỳ giá trị nào và không yêu cầu tham số. Lớp Sinh viên chứa các thuộc tính và phương thức nên tồn tại trong các đối tượng được tạo. sử dụng Hệ thống; ứng dụng không gian tên1 { sinh viên lớp { int studentID; tên chuỗi; public Student (int sid, string sname) { studentID = sid; tên = sname; } ~ Sinh viên (); public void displayDetails () { Bảng điều khiển. WriteLine (“ID sinh viên là {0}”, studentID); Bảng điều khiển. WriteLine (“Tên sinh viên là {0}”, tên); } } class StudentInfomation { static void Main (string [] args) { Student s = new Student (1, “Ann”); s.displayDetails (); Console.ReadLine (); } } } Theo chương trình trên, không gian tên được gọi là Ứng dụng 1. Không gian tên chứa một tập hợp các lớp có liên quan. Class Student có hai thuộc tính ID và tên học sinh. Trong chương trình chính, đối tượng Student được tạo. Đối tượng đó là '. Khi tạo đối tượng, hàm tạo sẽ đặt các giá trị. Sau đó, phương thức displayDetails được gọi. Điều đó sẽ in id và tên của sinh viên. Các lớp cũng có thể thực hiện kế thừa. Kế thừa là một tính năng trong Lập trình hướng đối tượng. Nó là sử dụng các thuộc tính và phương thức của một lớp đã tồn tại. Do đó, một lớp có thể kế thừa một lớp khác. Cấu trúc trong C # là gì?Cấu trúc là một kiểu dữ liệu kiểu giá trị trong C #. Nó là một biến duy nhất chứa nhiều kiểu dữ liệu. Cấu trúc có thể đại diện cho một bản ghi nhất định. Một cấu trúc chứa các thuộc tính. Một sinh viên có các thuộc tính như id, tên và tuổi. Một cấu trúc được xác định bằng từ khóa ‘struct’. Một chương trình có cấu trúc như sau. sử dụng Hệ thống; struct Sinh viên { public int id; tên chuỗi công khai; }; lớp công khai Sinh viên () { public static void main (string [] args) { Sinh viên; s.id = 1; s.name = “Ann”; Console.WriteLine (“Id sinh viên {0}”, s.id); Console.WriteLine (“Tên sinh viên {0}”, s.name); Console.ReadLine (); } } Theo chương trình trên, cấu trúc chứa hai thuộc tính. Chúng là id và tên. Trong chương trình chính, câu lệnh Student khai báo s thuộc kiểu Student. Sau đó, id và tên đã được cung cấp các giá trị. Cuối cùng, chúng được in trên màn hình. Không thể thay đổi hàm tạo mặc định của một cấu trúc vì hàm tạo mặc định được định nghĩa tự động. Cấu trúc không chứa hàm hủy. Không giống như trong lớp, một cấu trúc không thể kế thừa một lớp khác hoặc một cấu trúc khác. Sự tương đồng giữa lớp và cấu trúc trong C # là gì?
Sự khác biệt giữa Lớp và Cấu trúc trong C # là gì?
Tóm tắt - Lớp so với cấu trúc trong C #C # là một ngôn ngữ lập trình do Microsoft tạo ra. Trong lập trình, dữ liệu nên được lưu trữ. Dữ liệu được lưu trữ trong các vị trí bộ nhớ và chúng được biết đến như một biến. Mỗi biến có một loại dữ liệu cụ thể sẽ được lưu trữ. Có thể có kiểu dữ liệu kiểu giá trị và kiểu dữ liệu kiểu tham chiếu. Kiểu dữ liệu kiểu giá trị lưu trữ giá trị thực. Các kiểu dữ liệu kiểu tham chiếu lưu trữ một tham chiếu đến biến. Lớp và Cấu trúc có các kiểu dữ liệu khác nhau. Sự khác biệt giữa lớp và cấu trúc trong C # là, lớp là kiểu dữ liệu kiểu tham chiếu trong khi cấu trúc là kiểu dữ liệu kiểu giá trị. Tải xuống bản PDF Lớp và Cấu trúc trong C #Bạn có thể tải xuống phiên bản PDF của bài viết này và sử dụng nó cho các mục đích ngoại tuyến theo ghi chú trích dẫn. Vui lòng tải xuống phiên bản PDF tại đây: Sự khác biệt giữa lớp và cấu trúc trong C # Đây là câu hỏi mà bạn rất dễ gặp phải trong các cuộc phỏng vấn lập trình viên iOS. Vậy Struct và Class có điểm gì khác gì nhau ? Chúng ta sẽ phân tích trong bài viết hôm nay Điểm giống nhauVới người mới tiếp cận Swift, nhìn cách sử dụng Struct và Class thấy chúng tương đối giống nhau. Về cơ bản, Struct và Class đều thực hiện chung một nhiệm vụ là xây dựng một đối tượng.
Điểm khác nhau
Value Type: Mỗi instance giữ một bản sao duy nhất dữ liệu của nó. Nó sẽ tạo một instance mới (bản sao) khi được gán cho một biến, hoặc hằng, hoặc khi được truyền cho một hàm. Do đó, khi thay đổi giá trị của 1 instance, những instance khác không bị thay đổi theo. Xem ví dụ để hiểu hơn về khái niệm này struct Employee { var code: Int var name: String var address: String } var a = Employee(code: 5, name: "BXH", address: "Sun*") var b = a b.name = "MH" print(a.name) print(b.name)Reference Type: Mỗi instance chia sẻ một bản sao dữ liệu. Một kiểu mà khi được khởi tạo, khi được gán cho một biến hoặc hằng hoặc khi được truyền cho một hàm, sẽ trả về một tham chiếu đến cùng instance hiện có. Khái niệm thật khó hiểu đúng không. Đọc ví dụ để dễ hiểu hơn nhé class Employee { var code: Int var name: String var address: String init(code: Int, name: String, address: String) { self.code = code self.name = name self.address = address } } var a = Employee(code: 5, name: "BXH", address: "Sun*") var b = a b.name = "MH" print(a.name) print(b.name)
Vậy khi nào sử dụng Class, khi nào sử dụng StructApple định nghĩa Swift là ngôn ngữ theo hướng POP (Protocol Oriental Programming). POP xây dựng dựa trên tính linh hoạt của Struct và Protocol, do đó nhiều thư viện chuẩn của Swift sử dụng Struct (như Int, String, ...). Struct trong nhiều trường hợp cũng an toàn hơn Class trong việc quản lý bộ nhớ. Tuy nhiên không phải lúc nào chúng ta cũng sử dụng Struct. Sử dụng Struct khi nào
Sử dụng Class khi nào
|