What is the use of abstraction in php?
PHP - What are Abstract Classes and Methods?Abstract classes and methods are when the parent class has a named method, but need its child class(es) to fill out the tasks. Show An abstract class is a class that contains at least one abstract method. An abstract method is a method that is declared, but not implemented in the code. An abstract class or method is defined with the Syntaxabstract class
ParentClass { When inheriting from an abstract class, the child class method must be defined with the same name, and the same or a less restricted access modifier. So, if the abstract method is defined as protected, the child class method must be defined as either protected or public, but not private. Also, the type and number of required arguments must be the same. However, the child classes may have optional arguments in addition. So, when a child class is inherited from an abstract class, we have the following rules:
Let's look at an example: Example// Parent class // Child classes class Volvo extends Car { class Citroen extends Car { // Create objects from the child classes $volvo = new volvo("Volvo"); $citroen = new citroen("Citroen"); Try it Yourself » Example ExplainedThe Audi, Volvo, and Citroen classes are inherited from the Car class. This means that the Audi, Volvo, and Citroen classes can use the public $name property as well as the public __construct() method from the Car class because of inheritance. But, intro() is an abstract method that should be defined in all the child classes and they should return a string. PHP - More Abstract Class ExamplesLet's look at another example where the abstract method has an argument: Exampleabstract class ParentClass { class ChildClass extends ParentClass { $class = new ChildClass; Try it Yourself » Let's look at another example where the abstract method has an argument, and the child class has two optional arguments that are not defined in the parent's abstract method: Example
abstract class ParentClass { class ChildClass extends ParentClass { $class = new ChildClass; Try it Yourself » Why do we use abstraction in PHP?We use abstract classes when we want to commit the programmer (either oneself or someone else) to write a certain class method, but we are only sure about the name of the method, and not the details of how it should be written. To take an example, circles, rectangles, octagons, etc.
What is benefit of abstract class in PHP?Unlike C++ abstract classes in PHP are declared with the help of abstract keyword. Use of abstract classes are that all base classes implementing this class should give implementation of abstract methods declared in parent class. An abstract class can contain abstract as well as non abstract methods.
What is an abstraction used for?Abstraction is the process of hiding the internal details of an application from the outer world. Abstraction is used to describe things in simple terms.
Does PHP support abstraction?PHP has abstract classes and methods. Classes defined as abstract cannot be instantiated, and any class that contains at least one abstract method must also be abstract. Methods defined as abstract simply declare the method's signature; they cannot define the implementation.
|