‫Trong phần này và các video tiếp theo, bạn sẽ tìm hiểu về các giao diện và chúng
‫khá quan trọng vì chúng thực sự mở rộng chức năng của lập trình hướng đối tượng và của các lớp.
‫Vậy interface là gì?
‫Vâng, hãy nghĩ về các giao diện như các hợp đồng, trong đó một lớp triển khai một giao diện đồng ý cung cấp các triển khai cho
‫tất cả các đối tượng được xác định bởi giao diện đó.
‫Điều này có nghĩa là một giao diện sẽ chứa các điều khoản, phương thức và thuộc tính của hợp đồng, nhưng cách chúng ta triển khai chúng
‫như thế nào là tùy thuộc vào lớp triển khai giao diện.
‫Miễn là các phương thức giao diện này được triển khai trong lớp của chúng ta, giao diện sẽ vẫn hoạt động tốt.
‫Vì vậy, các giao diện không thể chứa bất kỳ triển khai nào.
‫Đó là quan trọng.
‫Vì vậy, tên của chúng thường được đặt trước IE để phân biệt với các vật sắc nhọn khác.
‫Chúng tôi tạo giao diện bằng cách sử dụng từ khóa giao diện.
‫Bây giờ chúng ta hãy xem làm thế nào chúng ta có thể làm điều đó trong thực tế.
‫Được rồi.
‫Vì vậy, chúng tôi ở đó, chúng tôi đã trở lại Visual Studio.
‫Vì vậy, một trong những chức năng được sử dụng nhiều nhất trong các lớp RC Sharp là so sánh với các thể hiện của một lớp.
‫Điều này được thực hiện bằng cách sử dụng phương pháp bằng.
‫Điều này sẽ so sánh để xem liệu tham chiếu đến cả hai lớp có giống nhau hay không.
‫Tuy nhiên, chúng tôi muốn so sánh chúng và xem liệu chúng có bằng nhau hay không dựa trên một số trường khác.
‫Vì vậy, chúng tôi có thể đạt được điều này bằng cách triển khai một giao diện có tên là I Equitable.
‫Vì vậy, trong trường hợp của chúng tôi, chúng tôi có một hạng gọi là Vé và nó xác định một thuộc tính gọi là thời lượng tính bằng giờ.
‫Vì vậy, hãy tiếp tục và tạo lớp học này thật nhanh chóng.
‫Ở đây tôi có một lớp học mới và thực sự tôi có thể đến đây hoặc sử dụng điều khiển phím tắt K và C và
‫tôi sẽ gọi đây là một vé.
‫Vì vậy, vé này, như tôi đã nói, chỉ có một thuộc tính và một hàm tạo.
‫Vì vậy, chúng ta hãy đặt chúng vào đây.
‫Vì vậy, tài sản này ở đó để lưu trữ thời hạn của vé và của chúng tôi.
‫Và sau đó chúng ta có hàm tạo ở đây.
‫Và bây giờ chúng ta hãy tiếp tục và triển khai giao diện công bằng AI.
‫Vì vậy, chúng tôi sử dụng một cái gì đó tương tự như những gì chúng tôi đã làm khi sử dụng kế thừa, chúng tôi sử dụng dấu hai chấm và sau đó là giao
‫diện mà chúng tôi muốn sử dụng.
‫Và bạn thấy có rất nhiều người trong số họ.
‫Và cái mà tôi muốn sử dụng sẽ là cái công bằng cao.
‫Bây giờ bạn cần xác định loại đối tượng bạn muốn so sánh.
‫Vì vậy, ở đây tôi muốn so sánh các vé với nhau.
‫Đây là lý do tại sao tôi cần thêm từ khóa vé.
‫Bây giờ bạn sẽ nhận thấy rằng Visual Studio không hài lòng lắm vì nó cho biết định nghĩa một phương thức tổng quát mà một loại
‫giá trị hoặc lớp triển khai để tạo một phương thức cụ thể.
‫Nhưng sau đó vấn đề mà chúng ta gặp phải ở đây là ticket không triển khai giao diện thành viên I equitable
‫ticket = ticket.
‫Chúng tôi rất có thể dễ dàng khắc phục điều đó bằng cách tiếp tục và thực hiện điều này.
‫Vì vậy, chúng tôi có thể đã sử dụng tốt tất cả các thành viên để triển khai chúng một cách rõ ràng hoặc chúng tôi có thể làm điều đó theo cách thủ công.
‫Hãy làm điều đó thật nhanh chóng.
‫Vì vậy, về cơ bản tôi muốn trả về một boolean sẽ kiểm tra xem bất kỳ vé nào tôi đang vượt qua,
‫vé nào sẽ là vé khác, có giống với vé không.
‫Đó là cái gọi là phương pháp này.
‫Vậy là vé.
‫Cái đó chúng tôi tạo ra từ cái này, chúng tôi so sánh nó với một vé khác, và sau đó chúng tôi muốn so sánh thời
‫lượng.
‫Vì vậy, nếu chúng có cùng thời hạn, thì chúng tôi sẽ cho rằng chúng là cùng một vé.
‫Vì vậy, ở đây chúng ta có thể tiếp tục và trả về so sánh thời lượng này tính bằng giờ so với thời lượng
‫khác tính bằng giờ.
‫Vì vậy, về cơ bản chúng tôi đang nói rằng vé này có thời hạn tính bằng giờ và vé kia cũng thuộc loại vé.
‫Vì vậy, nó có thời lượng tính bằng giờ và chúng tôi đang so sánh cả hai với nhau.
‫Và phép so sánh này, dấu bằng kép này, về cơ bản sẽ trả về true hay false?
‫Vì vậy, đây là toán tử Boolean ở bên trái và bên phải.
‫Vì vậy, những gì nó làm là nó so sánh những gì còn lại với nó, với những gì đúng với nó.
‫Và nếu chúng giống nhau, thì nó sẽ trả về true.
‫Nếu không nó sẽ trả về false.
‫Về cơ bản nói rằng phương thức này bằng sẽ trả về true.
‫Nếu vé gọi phương thức bằng có cùng thời hạn tính bằng giờ với vé mà chúng tôi so sánh với
‫nó, thì trả về true.
‫Nếu không, thì trả về false.
‫Được rồi, hãy chuyển sang chương trình của chúng tôi, CSE và thực sự sử dụng nó.
‫Vì vậy, ở đây những gì chúng tôi sẽ tạo là hai vé, một sẽ là TW một và nó sẽ là một vé mới và
‫nó sẽ có thời hạn trong 10 giờ.
‫Và sau đó hãy thực sự sao chép nó và tạo một vé hai, cũng sẽ có 10 giờ và bây giờ chúng ta có thể
‫so sánh chúng.
‫Vì vậy, ở đây chúng ta hãy sử dụng dòng bên phải điều khiển để chỉ hiển thị hai dấu chấm bằng và so sánh hai dấu chấm với nó.
‫Vì vậy, ở đây về cơ bản tôi so sánh vé hai của chúng tôi với vé một và so sánh nó bằng cách sử dụng phương pháp bằng.
‫Bây giờ chúng ta hãy chạy nó thực sự nhanh chóng.
‫Và bạn sẽ thấy rằng nó nói đúng.
‫Và đó thường không phải là trường hợp của phương pháp bằng, bởi vì nếu bạn so sánh hai đối tượng bằng cách sử dụng phương pháp
‫bằng thông thường, có thể nói như vậy.
‫Vì vậy, nếu chúng tôi không thực hiện điều này, hãy loại bỏ điều này ở đây trong giây lát.
‫Vì vậy, hãy bình luận tất cả những điều này và chúng ta hãy so sánh hai.
‫Bạn thấy đấy, phương pháp vẫn còn đó.
‫Phương thức này vẫn hoạt động, bởi vì phương thức bằng là một phương thức tồn tại nói chung.
‫Và bạn thấy bây giờ nó nói false bởi vì equals là một phương thức nằm bên trong lớp đối tượng.
‫Và lớp đối tượng luôn có phương thức bằng này vì mọi lớp đều kế thừa từ đối tượng.
‫Nhưng bây giờ những gì chúng tôi đang làm là chúng tôi đang triển khai phương pháp bình đẳng của riêng mình bằng cách sử dụng giao diện Tôi công bằng.
‫Vì vậy, chúng tôi đang sử dụng một giao diện cụ thể cho phép chúng tôi so sánh theo cách riêng của chúng tôi, có thể nói như vậy và triển khai mã
‫của riêng chúng tôi.
‫Vì vậy, bây giờ nếu chúng ta so sánh cả hai, chúng ta sẽ không so sánh xem đối tượng có chính xác
‫giống như chúng ta đang so sánh với nó hay không, nhưng nếu trong trường hợp của chúng ta, thời gian và thời gian của chúng ta là như nhau, và sau đó
‫nó sẽ trả về true.
‫Vì vậy, nếu thời gian và của chúng ta không giống nhau, giả sử nó là sáu, sau đó nó sẽ trả về false
‫vì thời lượng không giống nhau cho hai vé mà chúng ta đang so sánh với nhau.
‫Vì vậy, đây chỉ là một ví dụ sử dụng một giao diện đơn giản tồn tại và như bạn đã
‫thấy, có rất nhiều giao diện tồn tại tự động khi tạo một dự án.
‫Nhưng chúng ta sẽ xem cách tạo giao diện của riêng mình và sử dụng chúng trong video tiếp theo.
‫Vì vậy, hẹn gặp bạn ở đó.