0% found this document useful (0 votes)
68 views6 pages

Object Oriented Concepts

The document defines key object-oriented programming concepts like classes, objects, member variables, member functions, inheritance, polymorphism, and encapsulation. It then provides an example of defining a Books class in PHP with functions to set and get the book title and price. The document also discusses creating object instances, constructor functions to initialize objects, and inheriting from parent classes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
68 views6 pages

Object Oriented Concepts

The document defines key object-oriented programming concepts like classes, objects, member variables, member functions, inheritance, polymorphism, and encapsulation. It then provides an example of defining a Books class in PHP with functions to set and get the book title and price. The document also discusses creating object instances, constructor functions to initialize objects, and inheriting from parent classes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 6

Object Oriented Concepts

Before we go in detail, lets define important terms related to Object


Oriented Programming.

 Class − This is a programmer-defined data type, which includes local functions


as well as local data. You can think of a class as a template for making many
instances of the same kind (or class) of object.

 Object − An individual instance of the data structure defined by a class. You


define a class once and then make many objects that belong to it. Objects are
also known as instance.

 Member Variable − These are the variables defined inside a class. This data
will be invisible to the outside of the class and can be accessed via member
functions. These variables are called attribute of the object once an object is
created.

 Member function − These are the function defined inside a class and are used
to access object data.

 Inheritance − When a class is defined by inheriting existing function of a


parent class then it is called inheritance. Here child class will inherit all or few
member functions and variables of a parent class.

 Parent class − A class that is inherited from by another class. This is also
called a base class or super class.

 Child Class − A class that inherits from another class. This is also called a
subclass or derived class.

 Polymorphism − This is an object oriented concept where same function can


be used for different purposes. For example function name will remain same but
it make take different number of arguments and can do different task.

 Overloading − a type of polymorphism in which some or all of operators have


different implementations depending on the types of their arguments. Similarly
functions can also be overloaded with different implementation.

 Data Abstraction − Any representation of data in which the implementation


details are hidden (abstracted).
 Encapsulation − refers to a concept where we encapsulate all the data and
member functions together to form an object.

 Constructor − refers to a special type of function which will be called


automatically whenever there is an object formation from a class.

 Destructor − refers to a special type of function which will be called


automatically whenever an object is deleted or goes out of scope.

Defining PHP Classes


The general form for defining a new class in PHP is as follows −

<?php

class phpClass {

var $var1;

var $var2 = "constant string";

function myfunc ($arg1, $arg2) {

[..]

[..]

?>

Here is the description of each line −

 The special form class, followed by the name of the class that you want to
define.

 A set of braces enclosing any number of variable declarations and function


definitions.

 Variable declarations start with the special form var, which is followed by a


conventional $ variable name; they may also have an initial assignment to a
constant value.
 Function definitions look much like standalone PHP functions but are local to the
class and will be used to set and access object data.

Example
Here is an example which defines a class of Books type −

<?php

class Books {

/* Member variables */

var $price;

var $title;

/* Member functions */

function setPrice($par){

$this->price = $par;

function getPrice(){

echo $this->price ."<br/>";

function setTitle($par){

$this->title = $par;

function getTitle(){

echo $this->title ." <br/>";

}
?>

The variable $this is a special variable and it refers to the same object ie.
itself.

Creating Objects in PHP


Once you defined your class, then you can create as many objects as you
like of that class type. Following is an example of how to create object
using newoperator.
$physics = new Books;
$maths = new Books;
$chemistry = new Books;

Here we have created three objects and these objects are independent of
each other and they will have their existence separately. Next we will see
how to access member function and process member variables.

Constructor Functions
Constructor Functions are special type of functions which are called
automatically whenever an object is created. So we take full advantage of
this behaviour, by initializing many things through constructor functions.

PHP provides a special function called __construct() to define a


constructor. You can pass as many as arguments you like into the
constructor function.

Following example will create one constructor for Books class and it will
initialize price and title for the book at the time of object creation.
function __construct( $par1, $par2 ) {
$this->title = $par1;
$this->price = $par2;
}

Now we don't need to call set function separately to set price and title. We
can initialize these two member variables at the time of object creation
only. Check following example below −

$physics = new Books( "Physics for High School", 10 );

$maths = new Books ( "Advanced Chemistry", 15 );

$chemistry = new Books ("Algebra", 7 );


/* Get those set values */

$physics->getTitle();

$chemistry->getTitle();

$maths->getTitle();

$physics->getPrice();

$chemistry->getPrice();

$maths->getPrice();

This will produce the following result −


Physics for High School
Advanced Chemistry
Algebra
10
15
7

Destructor
Like a constructor function you can define a destructor function using
function __destruct(). You can release all the resources with-in a
destructor.

Inheritance
PHP class definitions can optionally inherit from a parent class definition by
using the extends clause. The syntax is as follows −
class Child extends Parent {
<definition body>
}

The effect of inheritance is that the child class (or subclass or derived class)
has the following characteristics −

 Automatically has all the member variable declarations of the parent class.

 Automatically has all the same member functions as the parent, which (by
default) will work the same way as those functions do in the parent.
Following example inherit Books class and adds more functionality based on
the requirement.

class Novel extends Books {

var $publisher;

function setPublisher($par){

$this->publisher = $par;

function getPublisher(){

echo $this->publisher. "<br />";

Now apart from inherited functions, class Novel keeps two additional
member functions.

You might also like