Skip to content
  • Bảng vàng Mankai
  • Tin tức
  • Liên hệ
  • VI
  • JP
Mankai AcademyMankai Academy
  • Giới thiệu
    • Về Mankai
    • Đội ngũ
  • JLPT
  • Kaiwa
  • Sơ cấp
  • Tokutei
  • IT Talk
  • Đào tạo doanh nghiệp
Trang chủ / Kiến thức chuyên môn / 4 Tính Chất OOP Java Thể Hiện Như Thế Nào?
  • Dành cho người mới bắt đầu
  • Dành cho người đã có nền tảng
  • Dành cho người muốn đi Nhật
  • Nhận kho tài liệu miễn phí
Test tư duy lập trình miễn phí

Đăng ký nhận tin tức từ Rikkei Academy

    07/06/2023

    4 Tính Chất OOP Java Thể Hiện Như Thế Nào?

    Phí Thanh 04 phút đọc
    4 Tinh Chat Opp Java Rikkei Academy

    Mục lục

    Toggle
    • OPP là gì?
    • Tính kế thừa (Inheritance)
      • Tính kế thừa thể hiện trong Java
    • Tính đa hình (Polymorphism)
      • Tính đa hình thể hiện trong Java
    • Tính đóng gói (Encapsulation)
      • Tính đóng gói thể hiện trong Java
    • Tính trừu tượng (Abstraction)
      • Tính trừu tượng thể hiện trong Java

    Là một trong những ngôn ngữ lập trình hướng đối tượng (OOP), Java cung cấp các tính chất OOP mạnh mẽ giúp các lập trình viên phát triển các ứng dụng phức tạp. Trong bài viết này, hãy cùng Rikkei Academy tìm hiểu về 4 tính chất OOP Java bao gồm: tính kế thừa, tính đa hình, tính đóng gói và tính trừu tượng.

    OPP là gì?

    Lập trình hướng đối tượng (OOP) là một mô hình lập trình tập trung vào sử dụng “đối tượng” để biểu diễn và thao tác dữ liệu. OPP giúp giải quyết các vấn đề phức tạp trong lập trình bằng cách chia các vấn đề thành các đối tượng nhỏ hơn và dễ quản lý hơn.

    Trong OOP, dữ liệu được đóng gói trong các đối tượng và các đối tượng được xác định bởi các thuộc tính (attributes) và hành vi (methods) của chúng. Ở đây, chúng ta sẽ đi sâu vào 4 tính chất OOP của Java bao gồm trừu tượng (abstraction), đóng gói (Encapsulation), kế thừa (Inheritance) và đa hình (Polymorrphism).

    Tính kế thừa (Inheritance)

    Tình chất đầu tiên trong 4 tính chất OOP Java chính là tính kế thừa. Tính kế thừa cho phép xây dựng các lớp mới trên cơ sở của lớp hiện có. Lớp mới (con) sẽ được kế thừa các thuộc tính và phương thức của lớp cha. Nó tương tự một đứa trẻ sẽ kế thừa các đặc điểm như màu da, màu tóc, cách nói chuyện…của cha mẹ.

    4 Tinh Chat Opp Java Rikkei Academy
    Tính kế thừa tương tự như một đứa trẻ kế thừa các đặc điểm của bố mẹ

    Việc sử dụng kế thừa giúp tiết kiệm thời gian và nỗ lực trong việc lập trình và giảm thiểu lỗi lặp lại. Nó cũng giúp tăng tính tái sử dụng của mã lập trình.

    Tính kế thừa thể hiện trong Java

    Trong Java, để kế thừa các thuộc tính và phương thức của một lớp cha, chúng ta sử dụng từ khóa “extends” khi khai báo lớp con. Ví dụ:

    class Animal {

    // các thuộc tính và phương thức của lớp Animal

    }

    class Dog extends Animal {

    // các thuộc tính và phương thức của lớp Dog

    }

    Ta có lớp Animal với các thuộc tính và phương thức chung cho các loài động vật, chúng ta tạo lớp Dog kế thừa từ lớp Animal thông qua từ khóa “extends”. Các lớp con này có các thuộc tính và phương thức riêng của chúng, nhưng vẫn có các thuộc tính và phương thức chung được kế thừa từ lớp cha Animal.

    Lưu ý: Ngoài ra việc sử dụng từ khóa “extends”, chúng ta có thể sử dụng Interface trong Java để đạt được tính kế thừa.

    Tính đa hình (Polymorphism)

    Tính đa hình (Polymorphism) là khả năng của đối tượng (object) thể hiện các hành vi khác nhau khi được gọi bằng cùng một phương thức. Nó cho phép các đối tượng của các lớp khác nhau có thể đáp ứng một cách khác nhau với cùng một phương thức. Ví dụ, một người với việc di chuyển thì họ có thể lựa chọn đi bộ, chạy hay ngồi phương tiện.

    Tính đa hình giúp làm giảm sự phức tạp của mã lập trình, tăng tính linh hoạt của chương trình và giảm thiểu lỗi lặp lại.

    Tính đa hình thể hiện trong Java

    Trong Java, tính đa hình được thể hiện thông qua việc sử dụng phương thức ghi đè (override) và nạp chồng (overload):

    • Trong ghi đè (override), lớp con thay đổi lại một phương thức đã được định nghĩa trong lớp cha. Khi một đối tượng của lớp con gọi phương thức đó, nó sẽ thực thi phương thức mới của lớp con thay vì phương thức cũ của lớp cha.
    • Trong nạp chồng (overload), một phương thức duy nhất có thể thực hiện các chức năng khác nhau tùy thuộc vào ngữ cảnh trong đó nó được gọi.
    • Sử dụng đối tượng đa hình (Polymorphic Objects), biến thuộc lớp cha có thể tham chiếu đến đối tượng của lớp con, khiến biến thuộc lớp cha cũng có thể đáp ứng với các phương thức của lớp con.

    Ví dụ: Ở đây, chúng ta có một phương thức makeSound() trong lớp Animal, và các lớp con Dog ghi đè phương thức này để cài đặt tiếng kêu riêng của chúng.

    class Animal {

    public void makeSound() {

    System.out.println(“The animal makes a sound”);

    }

    }

    class Dog extends Animal {

    @Override

    public void makeSound() {

    System.out.println(“The dog barks”);

    super.makeSound(); // gọi phương thức makeSound() của lớp cha

    }

    }

    Tính đóng gói (Encapsulation)

    Tính đóng gói (Encapsulation) cho phép chúng ta giấu thông tin của đối tượng và chỉ cho phép các phương thức được định nghĩa trong lớp đó mới có thể truy cập và sử dụng các thuộc tính và phương thức đó. Nó giúp che dấu và bảo vệ dữ liệu bên trong đối tượng khỏi truy cập trực tiếp từ bên ngoài. Điều này giúp giảm thiểu sự phụ thuộc giữa các đối tượng và tăng tính bảo mật cho chương trình.

    Ví dụ, mỗi người đều có thông tin cá nhân và để tránh sự xâm nhập của người không liên quan, chúng ta sẽ đóng gói thông tin của mình vào một nơi và bảo mật bằng cách đặt mật khẩu.

    Tính đóng gói thể hiện trong Java

    Trong Java, tính đóng gói được thực hiện bằng cách sử dụng các từ khóa truy cập (access modifiers), điều khiển khả năng nhìn thấy của biến và phương thức trong một lớp. Ba từ khóa truy cập trong Java bao gồm:

    • Public: Các biến và phương thức công khai (public) có thể truy cập từ bất kỳ đâu, bao gồm bên ngoài lớp.
    • Private: Các biến và phương thức riêng tư (private) chỉ có thể truy cập trong lớp mà chúng được định nghĩa.
    • Protected: Các biến và phương thức được bảo vệ (protected) có thể truy cập được trong cùng lớp và các lớp con của nó.

    Ví dụ:

    class Person {

    private String name;

    public String getName() {

    return name;

    }

    public void setName(String name) {

    this.name = name;

    }

    }

    Tính trừu tượng (Abstraction)

    Trừu tượng là tính chất cuối cùng trong 4 tính chất OOP Java chúng ta tìm hiểu trong bài viết này. Tính trừu tượng cho phép chúng ta tạo ra các lớp trừu tượng mà không cần cung cấp các triển khai cụ thể cho các phương thức của chúng. Ví dụ, chúng ta có thể mô tả một chiếc xe dựa trên màu sắc, hiệu xe và số chỗ ngồi mà không cần biết chi tiết về cấu tạo bên trong của xe.

    4 Tinh Chat Opp Java Rikkei Academy
    Tính trừu tượng cho phép tạo ra các lớp trừu tượng mà không cần cung cấp các phương thức triển khai cụ thể

    Việc sử dụng tính trừu tượng giúp tăng tính linh hoạt của chương trình, cho phép chúng ta dễ dàng thay đổi hoặc thêm mới các phương thức mà không ảnh hưởng đến các lớp khác trong chương trình. Nó cũng giúp giảm sự phức tạp của mã lập trình bằng cách tập trung vào các hành động cần thiết của đối tượng mà không cần quan tâm đến các chi tiết cài đặt cụ thể.

    Tính trừu tượng thể hiện trong Java

    Bạn có thể đạt được trừu tượng thông qua hai cơ chế chính:

    • Abstract class trong Java (Lớp trừu tượng) giúp đạt được tính trừu tượng từ 0 đến 100%.
    • Interfaces trong Java (giao diện) giúp đạt tính trừu tượng đến 100%.

    Ví dụ:

    abstract class Shape {

    protected int x;

    protected int y;

    public Shape(int x, int y) {

    this.x = x;

    this.y = y;

    }

    public abstract void draw();

    }

    class Circle extends Shape {

    private int radius;

    public Circle(int x, int y, int radius) {

    super(x, y);

    this.radius = radius;

    }

    @Override

    public void draw() {

    System.out.println(“Drawing a circle at (” + x + “, ” + y + “) with radius ” + radius);

    }

    }

    Trên đây là 4 tính chất OOP Java cốt lõi, việc sở hữu các tính chất của ngôn ngữ lập trình hướng đối tượng giúp quá trình phát triển phần mềm bằng ngôn ngữ Java trở nên dễ dàng và tiết kiệm thời gian hơn.

    Nếu bạn đang muốn theo học lập trình Java, tham khảo ngay khóa học tại Rikkei Academy. Rikkei Academy cung cấp đa dạng khóa học lập trình từ cơ bản đến nâng cao, phù hợp với nhiều đối tượng khác nhau. Với lộ trình tinh gọn, bám sát  thực tế, bạn sẽ chỉ học những kiến thức, kỹ năng thiết yếu để trở thành một lập trình viên chuyên nghiệp. Đặc biệt, Rikkei Academy áp dụng chính sách cam kết việc làm, ngay sau khi bạn tốt nghiệp khóa học sẽ được giới thiệu việc làm tại mạng lưới 500+ đối tác của Rikkei. Đăng ký để nhận tư vấn miễn phí ngay hôm nay!

    Bài viết cùng chủ đề

    • Chương trình học lập trình tinh gọn tại Rikkei Academy 23/08/202204 phút đọc Chương trình học lập trình tinh gọn tại Rikkei Academy
    • Lo Trinh Hoc Lap Trinh Web Cho Nguoi Moi Bat Dau 10/02/202304 phút đọc Lộ trình học lập trình web cho người mới bắt đầu
    • Static Trong Java Rikkei Academy 18/07/202304 phút đọc Static trong Java: 5 Phút Giải Mã Tất Tần Tật Về Từ Khóa Tĩnh
    • Java Platfrom là gì 19/05/202304 phút đọc Java Platform là gì? Những điều bạn cần biết về Java Platform
    • List Trong Python Rikkei Academy 1 08/06/202304 phút đọc List trong Python là gì? Hướng Dẫn Các Thao Tác Cơ Bản
    • Giải đáp thắc mắc lề lập trình cho người mới 07/06/202204 phút đọc Giải đáp những thắc mắc về Lập trình cho người mới

    Khởi động hành trình của bạn

    Hãy bước vào hành trình mới để khám phá tiềm năng và chinh phục những mục tiêu của bạn ngay hôm nay.

    Liên hệ Nhận tư vấn

    HỌC VIỆN ĐÀO TẠO VÀ PHÁT TRIỂN TIẾNG NHẬT THỰC CHIẾN

    HỌC VIỆN ĐÀO TẠO VÀ PHÁT TRIỂN TIẾNG NHẬT THỰC CHIẾN

    THÔNG TIN LIÊN HỆ

    Địa chỉ: Tòa nhà Sông Đà, Đường Phạm Hùng, Mỹ Đình, Nam Từ Liêm, Hà Nội

    Hotline: 0835 662 538

    Email: support@mankai.edu.vn

    LIÊN KẾT NHANH

    Giới thiệu
    JLPT
    Kaiwa
    Sơ cấp
    IT Talk
    Tokutei
    Đào tạo Doanh ngiệp
    Bảng vàng Mankai
    Tin tức
    Liên hệ

    THEO DÕI CHÚNG TÔI TẠI

    Copyright 2024 © Mankai Academy All rights reserved.
    • Về chúng tôi
    • Khác
    • Bảng vàng Mankai
    • Tin tức
    • Liên hệ
    • Giới thiệu
      • Về Mankai
      • Đội ngũ
    • JLPT
    • Kaiwa
    • Sơ cấp
    • Tokutei
    • IT Talk
    • Đào tạo doanh nghiệp