Nạp chồng phương thức trong Python là gì và nó hoạt động như thế nào?



Bài viết này giải thích nạp chồng phương thức trong python là gì và cách nó hoạt động. Có hai ví dụ khác nhau để giải thích sâu về phương pháp này.

Hai phương thức không được có cùng tên trong . Nạp chồng phương thức trong Python là một tính năng cho phép cùng một toán tử có các ý nghĩa khác nhau. Trong bài viết này, chúng ta sẽ xem xét tính năng nạp chồng phương thức trong Python và cách nó được sử dụng đểnạp chồng các phương thức, theo trình tự sau:

Quá tải là gì?

Quá tải là khả năng của một hàm hoặc một toán tử hoạt động theo những cách khác nhau dựa trên các tham số được chuyển đến , hoặc các toán hạng mà toán tử hành động.





hợp nhất sắp xếp thuật toán c ++

Một số lợi thế sử dụng quá tải là:

  • Quá tải một phương pháp sẽ thúc đẩy khả năng tái sử dụng. Ví dụ, thay vì viết nhiều phương thức chỉ khác nhau một chút, chúng ta có thể viết một phương thức và nạp chồng cho nó.



  • Quá tải cũng cải thiện độ rõ ràng của mã và loại bỏ sự phức tạp.

Quá tải là một khái niệm rất hữu ích. Tuy nhiên, nó có một số nhược điểm Liên kết với nó.

  • Quá tải có thể tạo ra sự nhầm lẫn khi sử dụng trên ranh giới. Khi được sử dụng quá mức, nó trở nên cồng kềnh để quản lý các chức năng quá tải.



Nạp chồng phương thức trong Python

Trong Python, bạn có thể tạo một phương thức có thể được gọi theo nhiều cách khác nhau. Vì vậy, bạn có thể có một phương thức không có, một hoặc nhiều số tham số. Tùy thuộc vào định nghĩa phương thức, chúng ta có thể gọi nó với không, một hoặc nhiều đối số.

Với một phương thức hoặc hàm duy nhất, bạn có thể chỉ định số lượng tham số. Quá trình gọi cùng một phương thức theo những cách khác nhau được gọi là nạp chồng phương thức.

Ví dụ về quá tải phương thức

Bây giờ bạn đã biết nạp chồng phương thức trong Python là gì, hãy lấy một ví dụ. Ở đây, chúng tôi tạo một lớp với một Xin chào() . Tham số đầu tiên của phương thức này được đặt thành Không có. Điều này sẽ cung cấp cho chúng tôi tùy chọn để gọi nó có hoặc không có tham số.

Một đối tượng cũng được tạo dựa trên lớp và chúng ta sẽ gọi phương thức của nó bằng cách sử dụng 0 và một tham số.

Ví dụ 1:

#! / usr / bin / env python class Person: def Xin chào (self, name = None): if name không phải là None: print ('Hello' + name) else: print ('Hello') # Tạo đối tượng obj = Person () # Gọi phương thức obj.Hello () # Gọi phương thức với tham số obj.Hello ('Edureka')

Đầu ra:

Xin chào, xin chào Edureka

Để làm rõ việc nạp chồng phương thức, bây giờ chúng ta có thể gọi phương thức Hello () theo hai cách:

obj.Hello () obj.Hello ('Edureka')

Trong ví dụ trên, chúng ta đã tạo một phương thức có thể được gọi với ít đối số hơn nó được định nghĩa để cho phép. Ngoài ra, nó không giới hạn ở hai biến và phương pháp của bạn có thể có nhiều biến tùy chọn.

Bây giờ chúng ta hãy lấy một cái khác thí dụ để hiểu quá tải phương thức trong .

việc sử dụng tuần tự hóa trong java là gì

Ví dụ 2:

Trong ví dụ sau, chúng ta sẽ nạp chồng cho phương thức area. Nếu không có đối số thì nó trả về 0. Và, Nếu chúng ta có một đối số thì nó trả về bình phương của giá trị và giả sử bạn đang tính diện tích của một hình vuông. Ngoài ra, nếu chúng ta có hai đối số thì nó trả về tích của hai giá trị và giả sử bạn đang tính diện tích hình chữ nhật.

# class class Tính toán: # area method def area (self, x = None, y = None): if x! = None và y! = None: return x * y elif x! = None: return x * x else: return 0 # object obj = Compute () # zero đối số print ('Giá trị vùng:', obj.area ()) # một đối số print ('Giá trị Vùng:', obj.area (4)) # hai đối số print ('Vùng Giá trị: ', obj.area (3, 5))

Đoạn mã trên sẽ cho chúng ta những điều sau đầu ra:

Giá trị vùng: 0 Giá trị vùng: 16 Giá trị vùng: 15

Với điều này, chúng ta đã đi đến phần cuối của bài viết của chúng tôi. Tôi hy vọng bạn đã hiểu nạp chồng phương thức trong python là gì và nó hoạt động như thế nào.

Để có kiến ​​thức chuyên sâu về python cùng với các ứng dụng khác nhau của nó, bạn có thể đăng ký tham gia trực tiếp của Edureka với hỗ trợ 24/7 và quyền truy cập trọn đời.

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần nhận xét của blog “Phương pháp quá tải trong Python” và chúng tôi sẽ liên hệ lại với bạn trong thời gian sớm nhất.