Lớp và đối tượng trong Java

Lớp và Đối tượng là gì trong Java?

Lớp và đối tượng trong Java là những thành phần cơ bản của OOP. Thường có sự nhầm lẫn giữa lớp và đối tượng. Trong hướng dẫn này, chúng tôi cố gắng cho bạn biết sự khác biệt giữa Lớp và Đối tượng trong Java. Trước tiên, chúng ta hãy tìm hiểu chúng là gì,

Lớp học là gì Java?

Lớp là một bản thiết kế hoặc một tập hợp các hướng dẫn để xây dựng một loại đối tượng cụ thể. Đây là một khái niệm cơ bản của Lập trình hướng đối tượng xoay quanh các thực thể trong đời thực. Lớp trong Java xác định cách một đối tượng sẽ hoạt động và đối tượng sẽ chứa những gì.

Cú pháp của lớp trong Java

class <class_name>{  
    field;  
    method;  
  }

Đối tượng trong đó là gì Java?

Đối tượng là một thể hiện của một lớp. Một vật thể trong OOPS không gì khác ngoài một thành phần độc lập bao gồm các phương thức và thuộc tính để làm cho một loại dữ liệu cụ thể trở nên hữu ích. Ví dụ: tên màu, bảng, túi, tiếng sủa. Khi bạn gửi một thông điệp đến một đối tượng, bạn đang yêu cầu đối tượng gọi hoặc thực thi một trong các phương thức của nó như được định nghĩa trong lớp. Theo quan điểm lập trình, một đối tượng trong OOPS có thể bao gồm một cấu trúc dữ liệu, một biến hoặc một hàm. Nó có một vị trí bộ nhớ được phân bổ. Java Các đối tượng được thiết kế theo hệ thống phân cấp lớp.

Cú pháp đối tượng trong Java

ClassName ReferenceVariable = new ClassName();

Sự khác biệt giữa đối tượng và lớp trong Java?

A Lớp trong lập trình hướng đối tượng là một bản thiết kế hoặc nguyên mẫu xác định các biến và các phương thức (hàm) chung cho tất cả Java Đối tượng của một loại nhất định.

An vật trong OOPS là mẫu của một lớp. Các đối tượng phần mềm thường được sử dụng để mô hình hóa các đối tượng trong thế giới thực mà bạn tìm thấy trong cuộc sống hàng ngày.

Nhấp chuột tại đây nếu video không thể truy cập được

Tìm hiểu khái niệm về Java Các lớp và đối tượng với một ví dụ.

Hãy lấy một ví dụ về việc phát triển một con vật cưng hệ thống quản lý, đặc biệt dành cho chó. Bạn sẽ cần nhiều thông tin khác nhau về những con chó như các giống chó khác nhau, độ tuổi, kích cỡ, v.v.

Bạn cần mô hình hóa những sinh vật ngoài đời thực, tức là chó thành các thực thể phần mềm.

Java Lớp và Đối tượng

Hơn nữa, câu hỏi trị giá hàng triệu đô la là, bạn thiết kế phần mềm như vậy như thế nào?

Đây là giải pháp- Trước tiên, chúng ta hãy làm một bài tập. Bạn có thể xem hình ảnh của ba giống chó khác nhau bên dưới.

Java Lớp và Đối tượng

Dừng lại ở đây ngay bây giờ! Liệt kê sự khác biệt giữa chúng.

Một số điểm khác biệt mà bạn có thể đã liệt kê có thể là giống, độ tuổi, kích thước, màu sắc, v.v. Nếu bạn suy nghĩ một chút, những khác biệt này cũng là một số đặc điểm chung của những con chó này. Những đặc điểm này (giống, tuổi, kích thước, màu sắc) có thể tạo thành thành viên dữ liệu cho đối tượng của bạn.

Java Lớp và Đối tượng

Tiếp theo, hãy liệt kê những hành vi phổ biến của những chú chó này như ngủ, ngồi, ăn, v.v. Vậy đây sẽ là những hành động của các đối tượng phần mềm của chúng ta.

Java Lớp và Đối tượng

Cho đến nay chúng tôi đã xác định những điều sau đây,

  • Lớp - Chó
  • Thành viên dữ liệu or đối tượng- Kích thước, độ tuổi, màu sắc, giống, v.v.
  • Phương pháp- Ăn, ngủ, ngồi và chạy.

Java Lớp và Đối tượng

Bây giờ, đối với các giá trị khác nhau của thành viên dữ liệu (kích thước giống, tuổi và màu sắc) trong Java class, bạn sẽ nhận được những đồ vật dành cho chó khác nhau.

Java Lớp và Đối tượng

Bạn có thể thiết kế bất kỳ chương trình nào bằng cách sử dụng phương pháp OOP này. Khi tạo một lớp, người ta phải tuân theo các nguyên tắc sau.

  • Nguyên tắc trách nhiệm duy nhất (SRP)- Một lớp chỉ nên có một lý do để thay đổi
  • Trách nhiệm đóng mở (OCP)- Nó có thể mở rộng bất kỳ lớp nào mà không cần sửa đổi nó
  • Trách nhiệm thay thế Liskov (LSR)- Các lớp dẫn xuất phải thay thế được cho các lớp cơ sở của chúng
  • Nguyên tắc đảo ngược phụ thuộc (DIP)- Phụ thuộc vào sự trừu tượng chứ không phụ thuộc vào sự cụ thể hóa
  • Nguyên tắc phân chia giao diện (ISP)- Chuẩn bị các giao diện chi tiết dành riêng cho khách hàng.

Lớp và đối tượng trong Java Chương trình ví dụ

// Class Declaration
public class Dog {
    // Instance Variables
    String breed;
    String size;
    int age;
    String color;

  
    // method 1
    public String getInfo() {
        return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);
    }
    

    public static void main(String[] args) {
        Dog maltese = new Dog();
        maltese.breed="Maltese";
        maltese.size="Small";
        maltese.age=2;
        maltese.color="white";
        System.out.println(maltese.getInfo());
    }
}

Đầu ra:

Breed is: Maltese Size is:Small Age is:2 color is: white

Java Ví dụ về đối tượng và lớp: lớp chính bên ngoài

Trong chương trình trước, chúng ta đang tạo phương thức main() bên trong lớp. Bây giờ, chúng ta tạo các lớp và định nghĩa phương thức main() trong một lớp khác. Đây là một cách tốt hơn so với cách trước.

// Class Declaration
class Dog {
    // Instance Variables
    String breed;
    String size;
    int age;
    String color;

  
    // method 1
    public String getInfo() {
        return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);
    }
}
public class Execute{
    public static void main(String[] args) {
        Dog maltese = new Dog();
        maltese.breed="Maltese";
        maltese.size="Small";
        maltese.age=2;
        maltese.color="white";
        System.out.println(maltese.getInfo());
    }
}

Đầu ra:

Breed is: Maltese Size is:Small Age is:2 color is: white

Tổng kết

  • Java Lớp là một thực thể xác định cách thức Java Các đối tượng sẽ hoạt động và những đối tượng sẽ chứa những gì
  • A Java đối tượng là một thành phần độc lập bao gồm các phương thức và thuộc tính để làm cho loại dữ liệu nhất định trở nên hữu ích
  • Hệ thống lớp cho phép chương trình định nghĩa một lớp mới (lớp dẫn xuất) theo lớp hiện có (siêu lớp) bằng cách sử dụng một kỹ thuật như thừa kế, ghi đè và tăng cường.