3. Disclaimer: This presentation is prepared by trainees of
baabtra as a part of mentoring program. This is not official
document of baabtra –Mentoring Partner
Baabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt .
Ltd
4. CLASS
A class is an expanded concept of a data,it
can hold both data and functions.
A class is the blueprint for your object.
A class, for example, is like a blueprint for a
house. It defines the shape of the house on
paper, with relationships between the
different parts of the house clearly defined
and planned out, even though the house
doesn’t exist.
5. visibility
The visibility of class members, (properties,
methods), relates to how that member may be
manipulated within, or from outside the class.
private:private members are accessible only in
the class itself.
Public:public members are accessible outside the
class(anywhere).
Protected:protected members are accessible in the
same package,and the subclasses of the class and
inside the class.
7. ENCAPSULATION
The wrapping up of a data and functions into a single
unit(which is called class).
Encapsulation means that some or all of an objects
internal structure is hidden from the outside world.
Hidden information may only be accessed through
the object’s public interface.
8. example
<?php
class MyClass
{
public $prop1 = "I'm a class property!";
public function setProperty($newval)
{
$this->prop1 = $newval;
}
public function getProperty()
{
return $this->prop1 . "<br />";
}
}
$obj = new MyClass;
echo $obj->getProperty(); // Get the property value
$obj->setProperty("I'm a new property value!"); // Set a new one
echo $obj->getProperty(); // Read it out again to show the change
?>
Output
• http://localhost/phpWorkspace/oops.php/class.php
9. INHERITANCE
• When you want to create a new class and there is
already a class that includes some of the code
that you want, you can derive your new class
from the existing class.
• A class that is derived from another class is called
a subclass (also a derived class, extended class, or
child class).
• The class from which the subclass is derived is
called a superclass (also a base class or a parent
class).
10. TYPES OF INHERITANCE
• Single Inheritance
• Hierarchical Inheritance
• Multi Level Inheritance
• Hybrid Inheritance
• Multiple Inheritance
11. SINGLE INHERITANCE
• when a single derived class is created from a
single base class then the inheritance is called
as single inheritance.
12. HIERARCHICAL INHERITANCE
• when more than one derived class are created
from a single base class, then that inheritance
is called as hierarchical inheritance.
13. MULTILEVEL INHERITANCE
• when a derived class is created from another
derived class, then that inheritance is called as
multi level inheritance.
14. HYBRID INHERITANCE
• Any combination of single, hierarchical and
multi level inheritances is called as hybrid
inheritance.
15. MULTIPLE INHERITANCE
• when a derived class is created from more
than one base class then that inheritance is
called as multiple inheritance.
16. Single inheritance
<?php
class parentclass
{
public function sum($a,$b)
{
echo $a+$b;
}
}
class childclass extends parentclass
{
public function diff($a,$b)
{
echo $a-$b;
}
}
$obj1=new childclass();
$obj1->sum(4,5);
echo "<br />";
echo "<br />";
$obj1->diff(8,3);
?>
Output:
http://localhost/phpWorkspace/oops.php/inheritance1.php
17. Hierarchical inheritance
<?php
class a
{
public function function_a()
{
echo "classA";
}
}
class b extends a
{
public function function_b()
{
echo "classB";
}
}
class c extends a
{
public function function_c()
{
echo "classC";
}
}
19. Multilevel inheritance
<?php
class a
{
public function function_a()
{
echo 'classa';
}
}
class b extends a
{
public function function_b()
{
echo 'classb';
}
}
class c extends b
{
public function function_c()
{
echo 'classc';
}
}
21. POLYMORPHISM
• Poly means many,morphism means forms.
• Polymorphism feature enables classes to
provide different implementation of methods
having the same name.
• Two types of polymorphism
Compile time(overloading)
Runtime(overriding)
22. OVERRIDING
• When we create a function in a derived class
with the same signature (in other words a
function has the same name, the same
number of arguments and the same type of
arguments) as a function in its parent class
then it is called method overriding.
23. example
<?php
class Shap
{
function draw(){}
}
class Circle extends Shap
{
function draw()
{
print "Circle has been drawn.</br>";
}
}
class Triangle extends Shap
{
function draw()
{
print "Triangle has been drawn.</br>";
}
}
class Ellipse extends Shap
{
function draw()
{
print "Ellipse has been drawn.";
}
}
}
25. OVERLOADING
• Method overloading means having two or
more methods with the same name but
different signatures in the same scope. These
two methods may exist in the same class or
another one in base class and another in
derived class.
27. DATA ABSTRACTION
• Any representation of data in which the implementation
details are hidden (abstracted).
• Data abstraction refers to, providing only essential
information to the outside word and hiding their background
details ie. to represent the needed information in program
without presenting the details
• They provide sufficient public methods to the outside world
to play with the functionality of the object and to manipulate
object data ie. state without actually knowing how class has
been implemented internally.
28. ABSTRACT CLASS
• An abstract class is one that cannot be
instantiated, only inherited. You declare an
abstract class with the keyword abstract
• When inheriting from an abstract class, all
methods marked abstract in the parent's class
declaration must be defined by the child;
29. <?php
abstract class One
{
abstract function disp();
}
class Two extends One
{
public function disp()
{
echo "Inside the child class<br/>";
}
}
class Three extends One
{
public function disp()
{
echo "Inside the child class 2<br/>";}
}
30. $two=new Two();
echo "<b>Calling from the child class Two:</b><br/>";
$two->disp();
echo "<b>Calling from the child class Three:</b><br/>";
$three=new Three();
$three->disp();
?>
Output
http://localhost/phpWorkspace/oops.php/abstractclass.php
31. INTERFACE
• Interface is a special class used like a template
for a group of classes with similar functions,
which must define a certain structure of
methods.
• It can contain constants and method
declarations, but not method bodies.
32. <?php
interface testdrive
{
function drive();
function stop();
}
class vehicle implements testdrive
{
public function __construct()
{
echo 'About this Vehicle.<br />';
}
public function drive()
{
echo 'VRRROOOOOOM!!!';
}
public function stop()
{
echo 'SSSCCRRREEEEEECCHH!!!<br />';
}
}
34. ABSTRACT CLASS INTERFACE
The Abstract methods can declare with
Access modifiers like public, internal,
protected. When implementing in
subclass these methods must be defined
with the same (or a less restricted)
visibility.
All methods declared in an interface must
be public.
Abstract class can contain variables and
concrete methods.
Interfaces cannot contain variables and
concrete methods except constants.
A class can Inherit only one Abstract class
and Multiple inheritance is not possible
for Abstract class.
A class can implement many interfaces
and Multiple interface inheritance is
possible.
35. If this presentation helped you, please visit our
page facebook.com/baabtra and like it.
Thanks in advance.
www.baabtra.com | www.massbaab.com |www.baabte.com
36. If this presentation helped you, please visit our
page facebook.com/baabtra and like it.
Thanks in advance.
www.baabtra.com | www.massbaab.com |www.baabte.com