Mối quan hệ giữa lớp và đối tượng trong C++ là gì

Một lớp là một kế hoạch chi tiết xác định các thuộc tính và hành vi của các đối tượng hoặc thực thể tương tự. Mỗi đối tượng là một thể hiện của một lớp có các thuộc tính và hành vi được liên kết với chúng

Khi các lớp được định nghĩa, không có bộ nhớ nào được cấp phát cho chúng vì các lớp này chỉ là một khái niệm hoặc kiểu dữ liệu do người dùng định nghĩa. Tuy nhiên, khi chúng ta tạo các đối tượng của các lớp này, bộ nhớ được cấp phát trong heap

Phạm vi

Bài viết nhằm

  • Giải thích khái niệm chung về lớp và đối tượng
  • Thảo luận về sự khác biệt chính giữa lớp và đối tượng
  • Giải thích việc sử dụng lớp và đối tượng trong OOP

Giới thiệu

Lập trình hướng đối tượng được xây dựng trên ý tưởng về đối tượng và lớp. Bất kỳ thực thể nào có trạng thái và hành vi đều là đối tượng. Trạng thái của một thực thể cho chúng ta biết về loại hoặc giá trị của nó, nhưng hành vi của nó cho chúng ta biết về các hành động hoặc hoạt động mà nó có thể thực hiện

Hãy xem xét các khái niệm thực tế

Ví dụ: chó có trạng thái hoặc thành phần dữ liệu như màu sắc, giống và hành vi hoặc phương pháp (hành động mà nó có thể thực hiện) là sủa, vẫy đuôi, ăn, ngủ, v.v.

Mối quan hệ giữa lớp và đối tượng trong C++ là gì

Bây giờ, hãy xem chi tiết về các lớp và đối tượng

Lớp học là gì?

Một lớp có thể được hiểu là một khuôn mẫu hoặc một kế hoạch chi tiết, chứa một số giá trị, được gọi là thành viên dữ liệu và một số bộ quy tắc, được gọi là hành vi hoặc phương thức. Dữ liệu và phương thức được định nghĩa trong lớp sẽ tự động được lấy khi một đối tượng được tạo. Lớp là một mẫu hoặc bản thiết kế cho các đối tượng. Người ta có thể tạo bao nhiêu đối tượng tùy thích dựa trên một lớp

Ví dụ: mẫu cho ô tô được tạo trước sau đó có thể tạo nhiều đơn vị hoặc đối tượng ô tô dựa trên mẫu. Và mỗi đối tượng phải có dữ liệu và phương thức được đề cập trong bản thiết kế

Một lớp là một tập hợp các đặc điểm và tính năng xác định một đối tượng. Nó là một kế hoạch chi tiết phải được thực hiện bởi từng đối tượng của nó

Ví dụ. Nếu chúng ta xác định một bản thiết kế của con người thì nó có thể có các thuộc tính như Tên, Tuổi, Giới tính, Nghề nghiệp và các chức năng như Đi bộ(), Ăn() và Ngủ(). Bất kỳ con người nào cũng phải có các thuộc tính (dữ liệu) và chức năng (phương thức) này được liên kết với chúng

Mối quan hệ giữa lớp và đối tượng trong C++ là gì

Đối tượng là gì?

Một lớp chứa các thuộc tính và hành vi của một tập hợp các đối tượng, nhiều đối tượng có thể được hình thành bằng cách sử dụng một lớp

  • Lấy ví dụ con chó làm đối tượng
  • Có nhiều loại chó khác nhau có nghĩa là các loại đối tượng khác nhau tùy theo loại chó. Ví dụ, một con chó có màu đen, một con chó khác có thể có màu xám hoặc trắng, v.v.
  • Tuy nhiên, chúng ta có thể nhận thấy rằng hầu hết các hành vi đều giống nhau như sủa, vẫy đuôi, ăn, ngủ, v.v.
  • Thuộc tính và hành vi của các đối tượng này có thể giống nhau nhưng giá trị của chúng sẽ khác nhau

Cú pháp để tạo một đối tượng

Dog Bulldog = new Dog("Bulldog");
Dog Shepherd = new Dog("Shepherd");

Lớp so với đối tượng

ClassObjectA lớp là một kế hoạch chi tiết để khai báo và tạo các đối tượng. Một đối tượng là một thể hiện của lớp cho phép người lập trình sử dụng các biến và phương thức từ bên trong lớp. Bộ nhớ không được phân bổ cho các lớp. Các lớp học không có sự tồn tại vật lý. Khi các đối tượng được tạo, bộ nhớ được cấp phát cho chúng trong bộ nhớ heap. Bạn có thể khai báo một lớp chỉ một lần. Một lớp có thể được sử dụng để tạo ra nhiều đối tượng. Lớp là một thực thể logic. Một đối tượng là một thực thể vật lý. Chúng tôi không thể thao tác lớp vì nó không có sẵn trong bộ nhớ. Các đối tượng có thể được thao tác. Lớp được tạo bằng từ khóa lớp như class Dog{}Các đối tượng được tạo thông qua từ khóa mới như Dog d = new Dog();. Chúng ta cũng có thể tạo một đối tượng bằng phương thức newInstance(), phương thức clone(), phương thức fatory và sử dụng quá trình giải tuần tự hóa. Thí dụ. Di động là một đẳng cấp. Nếu Mobile là lớp thì iphone, redmi, blackberry, samsung là các đối tượng của nó có các thuộc tính và hành vi khác nhau

Ví dụ về Lớp và Đối tượng

Hãy lấy một ví dụ về trang Đăng ký để hiểu rõ hơn

Mối quan hệ giữa lớp và đối tượng trong C++ là gì

Trang này chứa nhiều tùy chọn, như Tên, Họ, Email và Mật khẩu. Đây là một ví dụ về kế hoạch chi tiết. Chúng tôi có thể điền vào các giá trị khác nhau và theo đó các đối tượng khác nhau của bản thiết kế này sẽ được tạo. Khi chúng tôi điền vào các trường này và nhấp vào Đăng ký, một đối tượng mới của bản thiết kế này sẽ được tạo trong cơ sở dữ liệu

Chúng ta có thể tạo một lớp đại diện cho bản thiết kế này. Các thuộc tính của lớp này là các trường khác nhau của biểu mẫu này

// A class representing the sign-up form blueprint
class Register {

  String firstName;
  String lastName;
  String email;
  String password;
}

Khi chúng ta tạo một đối tượng của lớp này, chúng ta có thể gán giá trị cho các thuộc tính này như hình bên dưới

Register person = new Register();
person.firstName = "David";
person.lastName = "Dhawan";
person.email = "[email protected]";
person.password = "daviddhawan";

Các loại lớp học

Mối quan hệ giữa lớp và đối tượng trong C++ là gì

Các lớp dẫn xuất và kế thừa

Một lớp dẫn xuất đã được tạo hoặc dẫn xuất từ ​​một lớp khác. Mục đích của nó là để cải thiện chức năng của lớp cơ sở. Loại lớp này lấy các thuộc tính từ các lớp khác và kế thừa chúng

Thí dụ. Hãy lấy ví dụ về người con và cha mẹ, người con có tất cả những đặc tính của người cha

Mối quan hệ giữa lớp và đối tượng trong C++ là gì

phân lớp

Một lớp kế thừa các thuộc tính của nó từ một lớp khác được gọi là một lớp con. Lớp mà các thuộc tính được kế thừa được gọi là lớp cha

Mối quan hệ giữa lớp và đối tượng trong C++ là gì

Bird, Fish và Dog là tất cả các lớp con của siêu lớp Animal. Mỗi lớp trong số ba lớp. Chim, Cá và Chó có một số đặc điểm chung như chúng có miệng, mắt, v.v. Có những hành vi phổ biến cũng như chúng có thể di chuyển, tạo ra âm thanh, v.v.

Chúng ta có thể kết hợp các thuộc tính và hành vi phổ biến này để tạo thành một lớp mới của Động vật nói chung

siêu lớp

Một lớp cha là một lớp mà từ đó có thể dẫn xuất nhiều lớp con

Trong ví dụ trên, Animal là lớp cha và Bird, Dog và Fish là các lớp con

Công dụng của Lớp và Đối tượng

Công dụng của lớp

  • Một lớp là một cách để sắp xếp dữ liệu và thông tin hành vi. Nó là một mẫu phải được thực hiện bởi các đối tượng của nó
  • Một lớp cũng có thể được coi là kiểu dữ liệu do người dùng định nghĩa trong đó bất kỳ đối tượng nào thuộc kiểu dữ liệu đã xác định đều có một số thuộc tính và hành vi được xác định trước

Các đối tượng có thể được coi là hộp đen độc lập vì chúng bao gồm cả dữ liệu và phương thức hoạt động trên dữ liệu. Chức năng này làm cho việc sử dụng lại mã trong các hệ thống mới trở nên đơn giản

Lớp được sử dụng như thế nào để tạo các đối tượng do người dùng định nghĩa?

Chúng ta sẽ tạo một lớp thời gian để biểu thị thời gian trong ngày. Một đối tượng Thời gian chứa dữ liệu trong một giờ, một phút và vài giây. Bởi vì các giá trị này có mặt trong mọi đối tượng Thời gian, chúng tôi yêu cầu các biến thể hiện để lưu trữ chúng

class Time {
    int hour, minute, second;
    
    // Constructor to create an object of Time class
    Time(int hour, int minute, int second) {
        this.hour = hour;
        this.minute = minute;
        this.second = second;
    }
}

public class Main {
    public static void main(String args[]) {
        // Time: 12:34:55
        Time t1 = new Time(12, 34, 55);
        
        // Time: 9:45:12
        Time t2 = new Time(9, 45, 12);
    }
}

Tại sao lớp được sử dụng để tạo các đối tượng do người dùng định nghĩa?

Một lý do điển hình để xác định một loại đối tượng là đóng gói dữ liệu liên quan trong một đối tượng có thể được coi là một đơn vị. Thay vì khai báo một vài biến, chúng ta có thể khai báo một lớp có các thuộc tính được định nghĩa bên trong nó. Bây giờ, chúng ta có thể tạo một đối tượng của lớp sẽ có các biến được liên kết với nó

Ví dụ, trong đoạn mã trên, để biểu thị thời gian, chúng tôi đã tạo ba biến. giờ, phút và giây. Bây giờ, nếu chúng ta muốn tạo hai trường hợp thời gian, chúng ta có thể làm như vậy bằng cách sử dụng sáu biến. giờ1, phút1, giây1 và giờ2, phút2, giây2

Thay vì làm công việc lặp đi lặp lại này, chúng ta có thể tạo một lớp với ba thuộc tính và tạo các đối tượng của lớp đó. t1 và t2 như được triển khai trong mã

Lớp được sử dụng để kế thừa các thuộc tính từ các lớp khác như thế nào?

class Employee {
    String name;
    int employeeID;
    int salary;
}

class Programmer extends Employee {
    int bonus;
}

Giải trình

Ở đây, lớp Lập trình viên mở rộng các thuộc tính của lớp Nhân viên và thêm một thuộc tính nữa vào đó là tiền thưởng. Một lập trình viên có tất cả các thuộc tính của một nhân viên cộng với thuộc tính bous

Tại sao lớp được sử dụng để kế thừa các thuộc tính từ các lớp khác?

Nó đảm bảo khả năng sử dụng lại của mã. Chúng ta không phải viết đi viết lại cùng một đoạn mã. Nó cũng cho phép chúng tôi thêm các tính năng mới vào một lớp hiện có mà không sửa đổi chúng. Như trong ví dụ trên, chúng ta đã tạo một lớp mới Lập trình viên mở rộng các thuộc tính của lớp Nhân viên mà không thay đổi lớp Nhân viên

Mối quan hệ giữa lớp và đối tượng là gì?

Lớp là khuôn mẫu cho các đối tượng . Một lớp xác định các thuộc tính đối tượng bao gồm một phạm vi giá trị hợp lệ và một giá trị mặc định. Một lớp cũng mô tả hành vi của đối tượng. Một đối tượng là một thành viên hoặc một "thể hiện" của một lớp.

Mối quan hệ giữa đối tượng và ví dụ lớp là gì?

Đối tượng là một thể hiện của lớp . Lớp là một kế hoạch chi tiết hoặc khuôn mẫu mà từ đó các đối tượng được tạo ra. Đối tượng là một thực thể trong thế giới thực như bút, máy tính xách tay, điện thoại di động, giường, bàn phím, chuột, ghế, v.v. Lớp là một nhóm các đối tượng giống nhau.

Mối quan hệ giữa lớp và đối tượng trong C++ là gì?

Lớp học. Một lớp trong C ++ là khối xây dựng dẫn đến lập trình Hướng đối tượng. Đây là kiểu dữ liệu do người dùng định nghĩa, chứa các thành viên dữ liệu và hàm thành viên riêng, có thể được truy cập và sử dụng bằng cách tạo một thể hiện của lớp đó. Một lớp C++ giống như một bản thiết kế cho một đối tượng .

Mối quan hệ giữa các đối tượng lớp và thuộc tính là gì?

Một lớp là bản thiết kế của một đối tượng. Một biến của một lớp được gọi là một thể hiện của một lớp hoặc một đối tượng. Một lớp cho phép bạn tạo các loại phức tạp bằng cách nhóm các thuộc tính của nó bằng cách xác định các trường . Để tạo một đối tượng, bạn cần khai báo một biến của một lớp và khởi tạo nó.