Instructions

  • 1. Your final score will reflect your grasp of the concepts—approach each question with precision.
  • 2. Thoroughly review each solution before proceeding to ensure full understanding.
  • 3. Final results will be available after submission to provide insights into areas for further improvement.
  • 4. Maintain academic integrity—plagiarism undermines learning and professional growth.
  • 5. Once submitted, responses are final, so ensure you’re confident in your answers.
  • 6. These challenges are designed to test practical knowledge; apply your skills as you would in real-world scenarios.

All Problems

Question

Action

What is polymorphism in OOP?

View

Which feature of OOP enables polymorphism?

View

What does dynamic polymorphism refer to?

View

Can Python support method overloading by default?

View

Which of the following is an example of polymorphism?

View

What is the result of the following code?

View

What is achieved through method overriding?

View

How does Python resolve method calls in a hierarchy with multiple inheritance?

View

What will print(len([1, 2, 3, 4])) output?

View

Which method is called when str() is used on an object?

View

What is polymorphism in OOP?

Creating multiple objects from the same class
The ability of different classes to respond to the same method call
Restricting access to private methods
Creating new methods within abstract classes

Which feature of OOP enables polymorphism?

Inheritance
Encapsulation
Abstract classes
Static methods

What does dynamic polymorphism refer to?

Operator overloading
Method overriding at runtime
Private method access at compile time
Defining multiple constructors in a class

Can Python support method overloading by default?

Yes, using the @overload decorator
No, but it can be achieved through default arguments or *args
Yes, using different method names
Only with super()

Which of the following is an example of polymorphism?

len([1, 2, 3]) and len("Hello") both return valid outputs
super().__init__() calling a constructor
Defining __str__() in a class
Using the is operator to compare objects

What is the result of the following code?

class Animal: def sound(self): print("Some sound") class Dog(Animal): def sound(self): print("Bark") obj = Dog() obj.sound()

Some sound
Bark
Error
None

What is achieved through method overriding?

Multiple constructors
Same method names behaving differently in child classes
Preventing multiple inheritance
Restricting data access

How does Python resolve method calls in a hierarchy with multiple inheritance?

Using Method Resolution Order (MRO)
Randomly selecting a method
Based on constructor priority
Using the interface keyword

What will print(len([1, 2, 3, 4])) output?

4
3
Error
None

Which method is called when str() is used on an object?

__repr__()
__str__()
__format__()
__print__()