Skip to content
GK24
Computer AwarenessHard

Which of the following languages does NOT support multiple inheritance through classes?

  1. A.C++
  2. B.Java
  3. C.Python
  4. D.Eiffel

Correct answer

B. Java

Explanation

The correct answer is B, Java. Java deliberately leaves out multiple inheritance of classes to avoid the ambiguity that arises when two base classes supply a member of the same name, the problem often called the diamond problem, and it provides interfaces so that a class can still take behaviour from more than one source. Option A is wrong because C++ does support multiple inheritance, which is why it needs virtual base classes to settle the ambiguity. Option C is wrong because Python allows a class to list several base classes and resolves the order of lookup by a defined rule. Option D is wrong because Eiffel is another object-oriented language that permits multiple inheritance. The expected one-line answer in papers is that Java supports multiple inheritance of interfaces but not of classes.

Read the full article: Object-Oriented Programming: Classes, Objects and Pillars

View all
Q3.Computer AwarenessEasy

Wrapping up of data and the functions that operate on that data into a single unit is called

  1. A.Inheritance
  2. B.Encapsulation
  3. C.Overloading
  4. D.Compilation
Show answer
Correct answer: B. Encapsulation

Encapsulation means binding the data members and the member functions that act on them inside one unit, the class, and keeping the data private so that it can be reached only through the methods provided; the standard illustration is a capsule holding the medicine inside it.

Read the full explanation →
Q4.Computer AwarenessMedium

Showing only the essential features of an object to the user while hiding its internal details is known as

  1. A.Abstraction
  2. B.Encapsulation
  3. C.Inheritance
  4. D.Instantiation
Show answer
Correct answer: A. Abstraction

Abstraction presents only what the user needs, such as the accelerator and brake of a car, and keeps the internal working out of sight; in C++ it is obtained through abstract classes with pure virtual functions and in Java through interfaces and abstract classes.

Read the full explanation →
Q5.Computer AwarenessEasy

Who developed the C++ programming language?

  1. A.Dennis Ritchie
  2. B.James Gosling
  3. C.Bjarne Stroustrup
  4. D.Guido van Rossum
Show answer
Correct answer: C. Bjarne Stroustrup

Bjarne Stroustrup developed the language at Bell Laboratories, starting it as C with Classes and giving it the name C++ in 1983; it adds classes, inheritance and polymorphism to C while keeping C procedural power, which is why it is called a hybrid language.

Read the full explanation →