Mục lục:
Video: Java - 05: Classes-Các lớp. 2025
Nhiều lớp bạn sẽ thấy trong Java đã tạo ra các vật thể tự đứng vững. Tuy nhiên, sức mạnh thực sự của việc lập trình hướng đối tượng nằm ở khả năng tạo ra các lớp mô tả những vật có liên quan chặt chẽ với nhau.
Ví dụ: bóng chày cũng tương tự như bóng mềm; cả hai loại bóng cụ thể. Mỗi người có đường kính và trọng lượng; cả hai đều có thể bị ném, bắt, hoặc đánh. Tuy nhiên, chúng có các đặc tính khác nhau khiến chúng cư xử khác biệt.
Nếu bạn đang tạo một chương trình mô phỏng cách bóng chày và bóng mềm, bạn cần một cách để biểu diễn hai loại quả bóng này. Một lựa chọn là để tạo ra các lớp học riêng biệt để đại diện cho từng loại bóng. Các lớp này là tương tự, do đó, bạn chỉ có thể sao chép hầu hết các mã từ một lớp khác.
Một lựa chọn khác là sử dụng một lớp để đại diện cho cả hai loại bóng. Sau đó, bạn truyền một tham số cho constructor để cho biết liệu một cá thể của lớp có hoạt động như một quả bóng chày hay như một quả bóng mềm.
Thừa kếThừa kế
là một kỹ thuật lập trình hướng đối tượng cho phép bạn sử dụng một lớp làm cơ sở cho một lớp khác. Lớp hiện có được gọi là lớp lớp cơ sở, cấp bậc cao cấp, hoặc cấp bậc cha mẹ; lớp mới xuất phát từ nó được gọi là lớp con thừa kế, phân lớp, hoặc lớp con .
Bạn có thể sử dụng thừa kế để giải quyết vấn đề bóng chày / bóng mềm bằng cách tạo ra một lớp
Ball cung cấp các tính năng cơ bản của tất cả các loại quả bóng và sau đó sử dụng nó làm lớp cơ sở cho các lớp riêng biệt có tên > BaseBall và SoftBall . Sau đó, các lớp này có thể ghi đè lên các phương pháp cần phải cư xử khác nhau cho từng loại quả bóng. Một cách để suy nghĩ về thừa kế là như một cách để thực hiện các mối quan hệ là-a-type-of
. Ví dụ, một bóng mềm là một loại bóng, như là một quả bóng chày. Do đó thừa kế là một cách thích hợp để thực hiện các lớp học có liên quan này. Giao diện Một
giao diện
là một tập hợp các phương pháp công khai và khai báo trường.Lưu ý rằng giao diện chính nó không cung cấp bất kỳ mã để thực hiện những phương pháp. Thay vào đó, nó chỉ cung cấp các tờ khai. Sau đó, một lớp mà thực hiện giao diện cung cấp mã cho từng phương pháp mà giao diện định nghĩa. Bạn có thể sử dụng một giao diện để giải quyết vấn đề bóng chày / bóng mềm bằng cách tạo ra một giao diện có tên Ball
xác định tất cả các phương pháp và các trường mà một quả bóng nên có. Sau đó, bạn có thể tạo các lớp SoftBall và BaseBall để cả hai thực hiện giao diện Ball . Các giao diện có liên quan chặt chẽ đến sự thừa kế nhưng có hai khác biệt chính: Giao diện bản thân nó không cung cấp mã thực hiện bất kỳ phương thức nào của nó. Một giao diện chỉ là một bộ phương pháp và chữ ký trường. Ngược lại, một lớp cơ sở có thể cung cấp việc thực hiện cho một số hoặc tất cả các phương thức của nó.
Một lớp có thể chỉ có một lớp cơ sở. Tuy nhiên, một lớp có thể thực hiện nhiều giao diện khi cần thiết.