Bird
0
0

What will be the output of the following PHP code?

medium📝 Predict Output Q5 of 15
PHP - Inheritance and Polymorphism
What will be the output of the following PHP code?
abstract class Calculator {
  abstract public function multiply($a, $b);
}

class SimpleCalculator extends Calculator {
  public function multiply($a, $b) {
    return $a * $b;
  }
}

$calc = new SimpleCalculator();
echo $calc->multiply(4, 5);
A20
B45
CError: Cannot instantiate abstract class
DNull
Step-by-Step Solution
Solution:
  1. Step 1: Analyze class structure

    Calculator is abstract with an abstract method multiply.
  2. Step 2: Check subclass implementation

    SimpleCalculator implements multiply correctly.
  3. Step 3: Instantiation and method call

    We instantiate SimpleCalculator and call multiply(4, 5), which returns 20.
  4. Final Answer:

    20 -> Option A
  5. Quick Check:

    Abstract class cannot be instantiated, but subclass can [OK]
Quick Trick: Instantiate subclass, not abstract class, to use abstract methods [OK]
Common Mistakes:
  • Trying to instantiate abstract class directly
  • Assuming abstract methods have default implementation
  • Confusing method parameters or return values

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More PHP Quizzes