What is Object-Oriented Programming (OOP)?
Save For Revision
Save For Revision
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
WithoutBook brings subject-wise interview questions, online practice tests, tutorials, and comparison guides into one responsive learning workspace.
Know the top PHP OOPs interview questions and answers for freshers and experienced candidates to prepare for job interviews.
Know the top PHP OOPs interview questions and answers for freshers and experienced candidates to prepare for job interviews.
Search a question to view the answer.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class MyClass {
public function __construct() {
echo 'Constructor called';
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class MathUtility {
public static function add($a, $b) {
return $a + $b;
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Calculator {
public function add($a, $b) {
return $a + $b;
} public function add($a, $b, $c) {
return $a + $b + $c;
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Animal {
public function makeSound() {
echo 'Generic Animal Sound';
}
}
class Dog extends Animal {
public function makeSound() {
echo 'Bark';
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
interface Logger {
public function logMessage($message);
}
class FileLogger implements Logger {
public function logMessage($message) { // Implementation of logMessage method }
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Engine {
/* Engine properties and methods */
}
class Car {
private $engine;
public function __construct(Engine $engine) {
$this->engine = $engine;
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Example {
private $privateVar;
protected $protectedVar;
public $publicVar;
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Calculator {
private $result;
public function add($a, $b) {
$this->result = $a + $b;
return $this;
}
public function multiply($a) {
$this->result *= $a;
return $this;
}
}
$total = (new Calculator())->add(3, 5)->multiply(2)->getResult();
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
namespace MyNamespace;
class MyClass { /* class definition */ }
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
final class FinalClass {
/* class definition */
}
final function finalMethod() {
/* method definition */
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
abstract class Shape {
abstract public function calculateArea();
}
class Circle extends Shape {
public function calculateArea()
{
// Implementation for Circle's area calculation
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
trait Loggable {
public function log($message)
{
echo $message;
}
}
class User {
use Loggable;
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class ParentClass {
public static function whoAmI() {
echo static::class;
}
}
class ChildClass extends ParentClass { }
ChildClass::whoAmI(); // Outputs 'ChildClass'
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Example {
private static $counter = 0;
public static function incrementCounter() {
self::$counter++;
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Singleton {
private static $instance;
private function __construct() { /* private constructor */ } public static function getInstance() {
if (!self::$instance) {
self::$instance = new self();
}
return self::$instance;
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Database {
/* database operations */
}
class UserRepository {
private $database;
public function __construct(Database $database) {
$this->database = $database;
}
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Example {
final public function cannotOverride() { /* method implementation */ }
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class Subject {
private $observers = [];
public function addObserver(Observer $observer) {
$this->observers[] = $observer; }
public function notifyObservers() {
foreach ($this->observers as $observer) { $observer->update(); } } }
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
abstract class Shape {
abstract public function calculateArea();
}
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class ParentClass {
public static function whoAmI() {
echo static::class; } }
class ChildClass extends ParentClass { }
ChildClass::whoAmI(); // Outputs 'ChildClass'
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.
Example:
class MyClass {
public $property;
public function __clone() { // Additional cloning logic if needed } }
$obj1 = new MyClass(); $obj2 = clone $obj1;
Bookmark this item, mark it difficult, or place it in a revision set.
Log in to save bookmarks, difficult questions, and revision sets.