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

Trong hướng dẫn này, bạn sẽ tìm hiểu về khái niệm lớp và đối tượng trong Java với sự trợ giúp của các ví dụ.

Java là một ngôn ngữ lập trình hướng đối tượng. Khái niệm cốt lõi của phương pháp hướng đối tượng là chia các vấn đề phức tạp thành các đối tượng nhỏ hơn.

Đối tượng là bất kỳ thực thể nào có trạng thái và hành vi . Ví dụ, một chiếc xe đạp là một đồ vật. Nó có

  • States: idle, first gear, etc
  • Behaviors: braking, accelerating, etc.

Trước khi tìm hiểu về các đối tượng, trước tiên chúng ta hãy biết về các lớp trong Java.

Lớp Java

Một lớp là một bản thiết kế cho đối tượng. Trước khi tạo một đối tượng, trước tiên chúng ta cần xác định lớp.

Chúng ta có thể coi lớp học như một bản phác thảo (nguyên mẫu) của một ngôi nhà. Nó chứa tất cả các chi tiết về sàn nhà, cửa ra vào, cửa sổ, v.v. Dựa trên những mô tả này, chúng tôi xây dựng ngôi nhà. Ngôi nhà là đối tượng.

Vì nhiều ngôi nhà có thể được tạo ra từ cùng một mẫu mã, chúng ta có thể tạo nhiều đối tượng từ một lớp.

Tạo một lớp trong Java

Chúng ta có thể tạo một lớp trong Java bằng cách sử dụng từ khóa class. Ví dụ,

class ClassName {
  // fields
  // methods
}

Ở đây, các trường (biến) và phương thức lần lượt thể hiện trạng thái và hành vi của đối tượng.

  • fields are used to store data
  • methods are used to perform some operations

Đối với đối tượng xe đạp của chúng tôi , chúng tôi có thể tạo lớp dưới dạng

class Bicycle {

  // state or field
  private int gear = 5;

  // behavior or method
  public void braking() {
    System.out.println("Working of Braking");
  }
}

Trong ví dụ trên, chúng ta đã tạo một lớp có tên Xe đạp . Nó chứa một trường có tên là gear và một phương thức có tên là phanh () .

Đây, Xe đạp là một nguyên mẫu. Bây giờ, chúng tôi có thể tạo ra bất kỳ số lượng xe đạp nào bằng cách sử dụng nguyên mẫu. Và, tất cả các xe đạp sẽ chia sẻ các lĩnh vực và phương pháp của nguyên mẫu.

Lưu ý : Chúng tôi đã sử dụng các từ khóa privatevà public. Chúng được gọi là công cụ sửa đổi quyền truy cập. Để tìm hiểu thêm, hãy truy cập các công cụ sửa đổi quyền truy cập Java .

Đối tượng Java

Một đối tượng được gọi là một thể hiện của một lớp. Ví dụ, giả sử xe đạp là một lớp sau đó MountainBicycle , SportsBicycle , TouringBicycle , vv có thể được coi là đối tượng của lớp.

Tạo một đối tượng trong Java

Đây là cách chúng ta có thể tạo một đối tượng của một lớp.

className object = new className();

// for Bicycle class
Bicycle sportsBicycle = new Bicycle();

Bicycle touringBicycle = new Bicycle();

Chúng ta đã sử dụng newtừ khóa cùng với hàm tạo của lớp để tạo một đối tượng. Các hàm tạo tương tự như các phương thức và có cùng tên với lớp. Ví dụ, Bicycle()là hàm tạo của lớp Xe đạp . Để tìm hiểu thêm, hãy truy cập Java Constructors .

Ở đây, sportsBicycle và touringBicycle là tên của các đối tượng. Chúng ta có thể sử dụng chúng để truy cập các trường và phương thức của lớp.

Như bạn có thể thấy, chúng tôi đã tạo hai đối tượng của lớp. Chúng ta có thể tạo nhiều đối tượng của một lớp trong Java.

Lưu ý : Các trường và phương thức của một lớp cũng được gọi là thành viên của lớp.

Truy cập các thành viên của một lớp học

Chúng ta có thể sử dụng tên của các đối tượng cùng với .toán tử để truy cập các thành viên của một lớp. Ví dụ,

class Bicycle {

  // field of class
  int gear = 5;

  // method of class
  void braking() {
    ...
  }
}

// create object
Bicycle sportsBicycle = new Bicycle();

// access field and method
sportsBicycle.gear;
sportsBicycle.braking();

Trong ví dụ trên, chúng ta đã tạo một lớp có tên Xe đạp . Nó bao gồm một trường có tên là gear và một phương thức được đặt tên braking(). Lưu ý tuyên bố,

Bicycle sportsBicycle = new Bicycle();

Ở đây, chúng ta đã tạo một đối tượng Bicycle có tên là sportsBicycle . Sau đó, chúng tôi sử dụng đối tượng để truy cập trường và phương thức của lớp.

  • sportsBicycle.gear – access the field gear
  • sportsBicycle.braking() – access the method braking()

Chúng tôi đã đề cập đến phương pháp từ khá nhiều lần. Bạn sẽ tìm hiểu chi tiết về các phương thức Java trong chương tiếp theo.

Bây giờ chúng ta đã hiểu lớp và đối tượng là gì. Hãy xem một ví dụ hoạt động đầy đủ.

Ví dụ: Lớp và đối tượng Java

class Lamp {
  
  // stores the value for light
  // true if light is on
  // false if light is off
  boolean isOn;

  // method to turn on the light
  void turnOn() {
    isOn = true;
    System.out.println("Light on? " + isOn);

  }

  // method to turnoff the light
  void turnOff() {
    isOn = false;
    System.out.println("Light on? " + isOn);
  }
}

class Main {
  public static void main(String[] args) {

    // create objects led and halogen
    Lamp led = new Lamp();
    Lamp halogen = new Lamp();

    // turn on the light by
    // calling method turnOn()
    led.turnOn();

    // turn off the light by
    // calling method turnOff()
    halogen.turnOff();
  }
}

Đầu ra :

Light on? true
Light on? false

Trong chương trình trên, chúng ta đã tạo một lớp có tên là Đèn . Nó chứa một biến: isOn và hai phương thức: turnOn()và turnOff().

Bên trong lớp Chính , chúng tôi đã tạo ra hai đối tượng: đèn LED và halogen của lớp Đèn . Sau đó, chúng tôi sử dụng các đối tượng để gọi các phương thức của lớp.

  • led.turnOn() – It sets the isOn variable to true and prints the output.
  • halogen.turnOff() – It sets the isOn variable to false and prints the output.

Biến isOn được định nghĩa bên trong lớp còn được gọi là biến thể hiện. Đó là bởi vì khi chúng ta tạo một đối tượng của lớp, nó được gọi là một thể hiện của lớp. Và, mỗi cá thể sẽ có một bản sao biến riêng của nó.

Tức là, các vật thể dẫn và halogen sẽ có bản sao của biến isOn riêng .

Ví dụ: Tạo các đối tượng bên trong cùng một lớp

Lưu ý rằng trong ví dụ trước, chúng ta đã tạo các đối tượng bên trong một lớp khác và truy cập các thành viên từ lớp đó.

Tuy nhiên, chúng ta cũng có thể tạo các đối tượng bên trong cùng một lớp.

class Lamp {
  
  // stores the value for light
  // true if light is on
  // false if light is off
  boolean isOn;

  // method to turn on the light
  void turnOn() {
    isOn = true;
    System.out.println("Light on? " + isOn);

  }

  public static void main(String[] args) {
    
    // create an object of Lamp
    Lamp led = new Lamp();

    // access method using object
    led.turnOn();
  }
}

Đầu ra

Light on? true

Ở đây, chúng ta đang tạo đối tượng bên trong main()phương thức của cùng một lớp.









Gõ tìm kiếm nhanh...