Hướng dẫn mcq on method overriding in python - mcq trên ghi đè phương thức trong python

Câu 1: Cơ chế thiết kế một lớp mới dựa trên một hoặc nhiều lớp hiện có được gọi là:

  • Ghi đè
  • Di sản
  • Đa hình
  • Không ai trong số này

Câu 2: Điều gì đang xảy ra?

  • Ghi đè có thể xảy ra trong trường hợp kế thừa của các lớp.
  • Đó là một quá trình xác định lại phương pháp di truyền trong lớp trẻ em
  • Đó là một phương pháp ma thuật trong Python
  • Không ai trong số này

Câu 2: Điều gì đang xảy ra?

  • Ghi đè có thể xảy ra trong trường hợp kế thừa của các lớp.
  • Đó là một quá trình xác định lại phương pháp di truyền trong lớp trẻ em
  • Đó là một phương pháp ma thuật trong Python
  • Câu 3: Loại mối quan hệ nào tồn tại giữa lớp kế thừa và lớp cơ sở?

LÀ MỘT

  • CÓ MỘT
  • Cả hai
  • Không có
  • Câu 4: Điều gì không đúng khi ghi đè trong Python?

Xác định lại một phương thức lớp cơ sở trong lớp kế thừa được gọi là phương thức ghi đè.

  • Ghi đè là tính năng thiết yếu của ngôn ngữ hướng đối tượng.
  • Các phương thức ghi đè phải có cùng số lượng đối số với phương thức lớp cơ sở cùng tên.
  • Tất cả các tuyên bố trên là đúng.
  • Câu 5: Các biến và phương thức thể hiện trong lớp Python là:

Câu 4: Điều gì không đúng khi ghi đè trong Python? Xác định lại một phương thức lớp cơ sở trong lớp kế thừa được gọi là phương thức ghi đè. Ghi đè là tính năng thiết yếu của ngôn ngữ hướng đối tượng. Các phương thức ghi đè phải có cùng số lượng đối số với phương thức lớp cơ sở cùng tên.

Có thể ghi đè trong Python không?
a] Ability of a class to derive members of another class as a part of its own definition
b] Means of bundling instance variables and methods in order to restrict access to certain class members
c] Focuses on variables and passing of variables to functions
d] Allows for objects of different types and behaviour to be treated as the same general type
View Answer

Trong phương thức Python ghi đè xảy ra bằng cách xác định trong phương thức Lớp con A có cùng tên của một phương thức trong lớp cha. Khi bạn xác định một phương thức trong đối tượng, bạn thực hiện sau này có thể thỏa mãn cuộc gọi phương thức đó, vì vậy việc triển khai tổ tiên của nó không xuất hiện.
Explanation: Polymorphism is a feature of object-oriented programming languages. It allows for the implementation of elegant software that is well designed and easily modified.

2. Lý do lớn nhất cho việc sử dụng đa hình là gì? a] Nó cho phép lập trình viên suy nghĩ ở cấp độ trừu tượng hơn b] Có ít mã chương trình để viết c] Chương trình sẽ có thiết kế thanh lịch hơn và sẽ dễ dàng hơn để duy trì và cập nhật mã chương trình D]
a] It allows the programmer to think at a more abstract level
b] There is less program code to write
c] The program will have a more elegant design and will be easier to maintain and update
d] Program code takes up less space
View Answer

Trả lời: C Giải thích: Đa hình cho phép thực hiện phần mềm thanh lịch.
Explanation: Polymorphism allows for the implementation of elegant software.

3. Việc sử dụng gõ vịt là gì? a] Hạn chế nhiều hơn đối với các giá trị loại có thể được chuyển đến phương thức đã cho b] Không giới hạn đối với các giá trị loại có thể được chuyển đến phương thức đã cho c] ít hạn chế hơn đối với các giá trị loại có thể được chuyển đến phương thức đã cho D] Làm cho mã chương trình trả lời nhỏ
a] More restriction on the type values that can be passed to a given method
b] No restriction on the type values that can be passed to a given method
c] Less restriction on the type values that can be passed to a given method
d] Makes the program code smaller
View Answer

Trả lời: C Giải thích: Trong Python, bất kỳ tập hợp các lớp nào có một bộ phương pháp chung đều có thể được xử lý tương tự. Đây được gọi là gõ vịt. Do đó đánh máy vịt áp đặt ít hạn chế hơn.
Explanation: In Python, any set of classes with a common set of methods can be treated similarly. This is called duck typing. Hence duck typing imposes less restrictions.

4. Đầu ra của mã Python sau đây là gì?

class A:
    def __str__[self]:
        return '1'
class B[A]:
    def __init__[self]:
        super[].__init__[]
class C[B]:
    def __init__[self]:
        super[].__init__[]
def main[]:
    obj1 = B[]
    obj2 = A[]
    obj3 = C[]
    print[obj1, obj2,obj3]
main[]

A] 1 1 1 b] 1 2 3 C]
b] 1 2 3
c] ‘1’ ‘1’ ‘1’
d] An exception is thrown
View Answer

Trả lời: Giải thích: Super [] .__ init __ [] trong các lớp con đã được gọi đúng và không có các lớp con nào khác trả về bất kỳ giá trị nào khác. Do đó 1 được trả về mỗi lần đối tượng được tạo và in.
Explanation: The super[].__init__[] in the subclasses has been properly invoked and none of other subclasses return any other value. Hence 1 is returned each time the object is created and printed.

5. Đầu ra của mã Python sau đây là gì?

class Demo:
    def __init__[self]:
        self.x = 1
    def change[self]:
        self.x = 10
class Demo_derived[Demo]:
    def change[self]:
        self.x=self.x+1
        return self.x
def main[]:
    obj = Demo_derived[]
    print[obj.change[]]
 
main[]

a] 11 b] 2 c] 1 d] Một ngoại lệ được ném câu trả lời
b] 2
c] 1
d] An exception is thrown
View Answer

Trả lời: B Giải thích: Thay đổi phương thức lớp dẫn xuất [] ghi đè phương thức lớp cơ sở.
Explanation: The derived class method change[] overrides the base class method.

6. Một lớp trong đó một hoặc nhiều phương thức chỉ được thực hiện để nâng cao ngoại lệ được gọi là một lớp trừu tượng. a] Đúng b] câu trả lời FalseView
a] True
b] False
View Answer

Trả lời: Giải thích: Một lớp trong đó một hoặc nhiều phương thức không được thực hiện hoặc được thực hiện cho các phương thức ném một ngoại lệ được gọi là một lớp trừu tượng.
Explanation: A class in which one or more methods are unimplemented or implemented for the methods throw an exception is called an abstract class.

7. Ghi đè có nghĩa là thay đổi hành vi của các phương thức của các phương thức lớp dẫn xuất trong lớp cơ sở. a] Đúng b] câu trả lời FalseView
a] True
b] False
View Answer

Trả lời: B Giải thích: Ghi đè có nghĩa là nếu có hai phương pháp giống nhau có trong siêu lớp và lớp con, nội dung của phương thức lớp con được thực thi.
Explanation: Overriding means if there are two same methods present in the superclass and the subclass, the contents of the subclass method are executed.

8. Đầu ra của mã Python sau đây là gì?

class A:
    def __repr__[self]:
        return "1"
class B[A]:
    def __repr__[self]:
        return "2"
class C[B]:
    def __repr__[self]:
        return "3"
o1 = A[]
o2 = B[]
o3 = C[]
print[obj1, obj2, obj3]

A] 1 1 1 b] 1 2 3 C]
b] 1 2 3
c] ‘1’ ‘1’ ‘1’
d] An exception is thrown
View Answer

Trả lời: Giải thích: Super [] .__ init __ [] trong các lớp con đã được gọi đúng và không có các lớp con nào khác trả về bất kỳ giá trị nào khác. Do đó 1 được trả về mỗi lần đối tượng được tạo và in.
Explanation: When different objects are invoked, each of the individual classes return their individual values and hence it is printed.

5. Đầu ra của mã Python sau đây là gì?

class A:
    def __init__[self]:
        self.multiply[15]
        print[self.i]
 
    def multiply[self, i]:
        self.i = 4 * i;
class B[A]:
    def __init__[self]:
        super[].__init__[]
 
    def multiply[self, i]:
        self.i = 2 * i;
obj = B[]

a] 11 b] 2 c] 1 d] Một ngoại lệ được ném câu trả lời
b] 60
c] An exception is thrown
d] 30
View Answer

Trả lời: B Giải thích: Thay đổi phương thức lớp dẫn xuất [] ghi đè phương thức lớp cơ sở.
Explanation: The derived class B overrides base class A.

6. Một lớp trong đó một hoặc nhiều phương thức chỉ được thực hiện để nâng cao ngoại lệ được gọi là một lớp trừu tượng. a] Đúng b] câu trả lời FalseView

class Demo:
    def check[self]:
        return " Demo's check "  
    def display[self]:
        print[self.check[]]
class Demo_Derived[Demo]:
    def check[self]:
        return " Derived's check "
Demo[].display[]
Demo_Derived[].display[]

Trả lời: Giải thích: Một lớp trong đó một hoặc nhiều phương thức không được thực hiện hoặc được thực hiện cho các phương thức ném một ngoại lệ được gọi là một lớp trừu tượng.
b] Demo’s check Demo’s check
c] Derived’s check Demo’s check
d] Syntax error
View Answer

7. Ghi đè có nghĩa là thay đổi hành vi của các phương thức của các phương thức lớp dẫn xuất trong lớp cơ sở. a] Đúng b] câu trả lời FalseView
Explanation: Demo[].display[] invokes the display[] method in class Demo and Demo_Derived[].display[] invokes the display[] method in class Demo_Derived.

Trả lời: B Giải thích: Ghi đè có nghĩa là nếu có hai phương pháp giống nhau có trong siêu lớp và lớp con, nội dung của phương thức lớp con được thực thi.

class A:
    def __init__[self]:
        self.multiply[15]
    def multiply[self, i]:
        self.i = 4 * i;
class B[A]:
    def __init__[self]:
        super[].__init__[]
        print[self.i]
 
    def multiply[self, i]:
        self.i = 2 * i;
obj = B[]

8. Đầu ra của mã Python sau đây là gì?
b] 30
c] An exception is thrown
d] 60
View Answer

Trả lời: B Giải thích: Khi các đối tượng khác nhau được gọi, mỗi lớp riêng lẻ trả về các giá trị riêng lẻ của chúng và do đó nó được in.
Explanation: The derived class B overrides base class A.

9. Đầu ra của mã Python sau đây là gì?

class Demo:
    def __check[self]:
        return " Demo's check "
    def display[self]:
        print[self.check[]]
class Demo_Derived[Demo]:
    def __check[self]:
        return " Derived's check "
Demo[].display[]
Demo_Derived[].display[]

Trả lời: Giải thích: Một lớp trong đó một hoặc nhiều phương thức không được thực hiện hoặc được thực hiện cho các phương thức ném một ngoại lệ được gọi là một lớp trừu tượng.
b] Demo’s check Demo’s check
c] Derived’s check Demo’s check
d] Syntax error
View Answer

7. Ghi đè có nghĩa là thay đổi hành vi của các phương thức của các phương thức lớp dẫn xuất trong lớp cơ sở. a] Đúng b] câu trả lời FalseView
Explanation: The method check is private so it can’t be accessed by the derived class. Execute the code in the Python shell.

Trả lời: B Giải thích: Ghi đè có nghĩa là nếu có hai phương pháp giống nhau có trong siêu lớp và lớp con, nội dung của phương thức lớp con được thực thi.

class A:
    def __init__[self, x, y]:
        self.x = x
        self.y = y
    def __str__[self]:
        return 1
    def __eq__[self, other]:
        return self.x * self.y == other.x * other.y
obj1 = A[5, 2]
obj2 = A[2, 5]
print[obj1 == obj2]

8. Đầu ra của mã Python sau đây là gì?
b] 1
c] True
d] An exception is thrown
View Answer

Trả lời: B Giải thích: Khi các đối tượng khác nhau được gọi, mỗi lớp riêng lẻ trả về các giá trị riêng lẻ của chúng và do đó nó được in.
Explanation: Since 5*2==2*5, True is printed. Execute it in the Python shell to verify.

9. Đầu ra của mã Python sau đây là gì?

class A:
    def one[self]:
        return self.two[]    	
    def two[self]:
        return 'A'   
class B[A]:
    def two[self]:
        return 'B'
obj2=B[]
print[obj2.two[]]

a] 15 b] 60 c] Một ngoại lệ được ném d] 30View Trả lời
b] An exception is thrown
c] A B
d] B
View Answer

Trả lời: D Giải thích: Lớp B dẫn xuất ghi đè lớp cơ sở A.
Explanation: The derived class method two[] overrides the method two[] in the base class A.

10. Đầu ra của mã Python sau đây là gì?
a] A non-private method in a superclass can be overridden
b] A subclass method can be overridden by the superclass
c] A private method in a superclass can be overridden
d] Overriding isn’t possible in Python
View Answer

a] Demo Demo Kiểm tra có nguồn gốc từ đầu Kiểm tra B] Demo Kiểm tra Demo Kiểm tra C]
Explanation: A public method in the base class can be overridden by the same named method in the subclass.

Trả lời: Giải thích: demo []. Display [] gọi phương thức Display [] trong lớp demo và demo_derive []. Display [] gọi phương thức hiển thị [] trong lớp demo_deriving.

11. Đầu ra của mã Python sau đây là gì?

a] 15 b] 30 c] Một ngoại lệ được ném d] 60view Trả lời

  • Trả lời: B Giải thích: Lớp B dẫn xuất ghi đè lớp cơ sở A.
  • 12. Đầu ra của mã Python sau đây là gì?
  • Trả lời: B Giải thích: Kiểm tra phương pháp là riêng tư để nó có thể được truy cập bởi lớp dẫn xuất. Thực thi mã trong vỏ python.
  • 13. Đầu ra của mã Python sau đây là gì?
  • a] Sai b] 1 c] Đúng d] Một ngoại lệ được ném câu trả lời
  • Các bài kiểm tra giả chương: Chương 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10,

Manish Bhojasia, một cựu chiến binh công nghệ với hơn 20 năm @ Cisco & Wipro, là người sáng lập và CTO tại Sanfoundry. Ông sống ở Bangalore, và tập trung vào sự phát triển của nhân Linux, Công nghệ San, Cvanced C, Cấu trúc dữ liệu & Alogrithms. Giữ kết nối với anh ta tại LinkedIn.Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.

Đăng ký các lớp học chính miễn phí của mình tại YouTube & Thảo luận kỹ thuật tại Telegram SanfoundryClasses.

Phương pháp ghi đè trong Python là gì?

Phương pháp ghi đè trong Python là gì? Ghi đè phương thức là một tính năng của các ngôn ngữ lập trình hướng đối tượng trong đó lớp con hoặc lớp con có thể cung cấp cho chương trình các đặc điểm cụ thể hoặc một quy trình thực hiện cụ thể của dữ liệu với điều kiện đã được xác định trong lớp cha hoặc siêu lớp.

Điều này không đúng về việc ghi đè trong Python MCQ?

Câu 4: Điều gì không đúng khi ghi đè trong Python?Xác định lại một phương thức lớp cơ sở trong lớp kế thừa được gọi là phương thức ghi đè.Ghi đè là tính năng thiết yếu của ngôn ngữ hướng đối tượng.Các phương thức ghi đè phải có cùng số lượng đối số với phương thức lớp cơ sở cùng tên.The overridden methods must have the same number of arguments as the base class method of the same name.

Có thể ghi đè trong Python không?

Trong phương thức Python ghi đè xảy ra bằng cách xác định trong phương thức Lớp con A có cùng tên của một phương thức trong lớp cha.Khi bạn xác định một phương thức trong đối tượng, bạn thực hiện sau này có thể thỏa mãn cuộc gọi phương thức đó, vì vậy việc triển khai tổ tiên của nó không xuất hiện.. When you define a method in the object you make this latter able to satisfy that method call, so the implementations of its ancestors do not come in play.

Khái niệm về phương pháp ghi đè trong Python đưa ra một ví dụ cho cùng?

Phương pháp ghi đè là khả năng của bất kỳ ngôn ngữ lập trình hướng đối tượng nào cho phép lớp con hoặc lớp con cung cấp một triển khai cụ thể của một phương thức đã được cung cấp bởi một trong các lớp siêu hoặc lớp của nó.

Bài Viết Liên Quan

Chủ Đề