Practice polymorphism Quizzes
Enhance your polymorphism skills with carefully curated quizzes designed to improve concept clarity and real-world application. Each question reinforces key principles through active practice. Ideal for students and professionals, these quizzes help you learn faster, stay sharp and strengthen your overall technical expertise.
Explore All polymorphism Quizzes
Learn polymorphism step by step with interactive quizzes designed for beginners and learners revising key concepts. Build a strong foundation with clear, structured practice in polymorphism.
Question 1
What is polymorphism in Object-Oriented Programming (OOP)?
1
The process of restricting access to certain members of a class.
2
The ability to inherit properties from a base class.
3
The mechanism of wrapping data and methods into a single unit.
4
The ability to use the same function name for different functionalities.
Question 2
What are the types of polymorphism in OOP?
1
Public and Private
2
Single and Multiple
3
Static and Dynamic
4
Inheritance and Encapsulation
Question 3
Which of the following is an example of compile-time polymorphism?
1
Interfaces
2
Abstract Classes
3
Function Overloading
4
Function Overriding
Question 4
What is the difference between method overloading and method overriding?
1
Overloading is runtime polymorphism, overriding is compile-time polymorphism
2
Overloading happens in a subclass, overriding happens in the same class
3
Overloading requires inheritance, overriding does not
4
Overloading occurs in the same class, overriding occurs in a derived class
Question 5
Which statement about polymorphism is correct?
1
Polymorphism allows multiple classes to have the same properties.
2
Polymorphism enables a function to be used for different types of objects.
3
Polymorphism is only applicable to function overloading.
4
Polymorphism prevents method overriding.
Question 6
What is the key feature of runtime polymorphism?
1
Method overloading
2
No inheritance required
3
Compile-time resolution
4
Dynamic method dispatch
Question 7
Which of the following statements about function overloading and function overriding is correct?
1
Function overloading requires inheritance, while function overriding does not
2
Function overriding does not support dynamic binding
3
Function overloading is resolved at compile-time, while function overriding is resolved at runtime
4
Function overloading occurs at runtime, while function overriding occurs at compile time
Question 8
What is method overriding in Java?
1
Making a method static
2
Defining a method with the same name and parameters in a child class
3
Changing the return type of an existing method
4
Declaring a new method with the same name in the same class
Question 9
Which keyword is used in Java to prevent method overriding?
1
static
2
super
3
final
4
abstract
Question 10
What will be the output of the following Java program?
class A {
void display() { System.out.println("Class A"); }
}
class B extends A {
void display() { System.out.println("Class B"); }
}
public class Main {
public static void main(String[] args) {
A obj = new B();
obj.display();
}
}1
Compilation Error
2
Class A
3
Class B
4
Runtime Error
Question 11
Which of the following statements is true about operator overloading in C++?
1
It is a type of compile-time polymorphism
2
It is achieved using function overloading
3
It allows redefining how operators work for user-defined types
4
All of the above
Question 12
In C++, which keyword is used to achieve runtime polymorphism?
1
virtual
2
static
3
friend
4
override
Question 13
What is an abstract class in Java?
1
A class that cannot be instantiated
2
A class that must contain at least one abstract method
3
A class that allows method overriding
4
All of the above
Question 14
How does Java implement runtime polymorphism?
1
Virtual function table (vtable)
2
Dynamic method dispatch
3
Early binding
4
Function overloading
Question 15
What is a virtual function in C++?
1
A function that is resolved at runtime
2
A function that supports operator overloading
3
A function that cannot be overridden
4
A function with no implementation
Question 16
What is the role of the vtable in C++?
1
It speeds up compile-time polymorphism.
2
It stores pointers to virtual functions.
3
It prevents method overriding.
4
It stores a list of all functions in a class.
Question 17
Which keyword in Java is used to call the parent class method explicitly in method overriding?
1
override
2
parent
3
base
4
super
Question 18
What will be the output of the following program?
#include <iostream>
using namespace std;
class Base {
public:
virtual void show() { cout << "Base"; }
};
class Derived : public Base {
public:
void show() { cout << "Derived"; }
};
int main() {
Base b;
Derived d;
Base* ptr = &b;
ptr->show();
return 0;
}1
Compilation Error
2
Undefined Behavior
3
Derived
4
Base
Question 19
What will be the output of the following program?
#include <iostream>
using namespace std;
class Base {
public:
virtual void show() { cout << "Base"; }
};
class Derived : public Base {
public:
void show() { cout << "Derived"; }
};
int main() {
Base b;
Derived d;
Base* ptr = &d;
ptr->show();
return 0;
}1
Compilation Error
2
Derived
3
Undefined Behavior
4
Base
Question 20
What will be the output of the following program?
#include <iostream>
using namespace std;
class Base {
public:
virtual void show() { cout << "Base"; }
};
class Derived : public Base {
public:
void show() { cout << "Derived"; }
};
int main() {
Base b;
Derived d;
Derived* ptr = &b;
ptr->show();
return 0;
}1
Derived
2
Error
3
Undefined Behavior
4
Base
Question 21
Which of the following is true about abstract classes in C#?
1
Abstract classes can be instantiated.
2
An abstract class can have concrete methods.
3
Interfaces and abstract classes are the same.
4
Abstract classes must have at least one abstract method.
Question 22
What happens when a base class function is declared as virtual in C++?
1
The function cannot have a body
2
The function call is resolved at runtime using vtable
3
The function cannot be overridden in derived classes
4
The function call is resolved at compile-time
Question 23
What is true about method overriding in Java?
1
Overriding methods must have the same return type and parameters
2
A method cannot be overridden if it is declared static
3
The return type of the overriding method can be a subclass of the return type of the overridden method
4
Overriding is determined at compile time
Question 24
Which keyword prevents method overriding in C#?
1
private
2
abstract
3
sealed
4
final
Question 25
What happens if a class contains at least one pure virtual function in C++?
1
It cannot have constructors
2
It becomes an abstract class
3
It does not support polymorphism
4
It can be instantiated normally
Question 26
What is the default behavior if a base class pointer points to a derived class object but does not use virtual functions in C++?
1
The base class method is called
2
Runtime error
3
Compilation error
4
The derived class method is called
Question 27
What will happen if a C++ derived class does not override a virtual function of the base class?
1
Compilation error
2
The base class function is called
3
Runtime Error
4
The program crashes
5
Undefined behavior
Question 28
Which statement is true about interfaces and abstract classes?
1
Interfaces can have constructors
2
Interfaces cannot be implemented by multiple classes
3
An abstract class can have both abstract and concrete methods
4
Abstract classes cannot have concrete methods
Question 29
Which principle of OOP is illustrated by defining different methods with the same name but different parameters?
1
Polymorphism
2
Encapsulation
3
Inheritance
4
Abstraction
Question 30
Which concept in OOP allows for the same function to be used in different ways based on the object it is associated with?
1
Polymorphism
2
Abstraction
3
Inheritance
4
Encapsulation
