菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
0
0

php面向对象

原创
05/13 14:22
阅读数 166

课程推荐:PHP开发工程师--学习猿地--送9个商业项目

面向对象的程序设计(英语:Object-oriented programming,缩写:OOP)

1、类 :定义了一类事物的抽象特点。
2、对象:是类的实例。

3、创建对象:
对象名字 = new 类名();
4、成员变量:定义在内部的变量,在类被实例化为对象后,该变量即可称为的属性。

5、成员函数:定义在内部,可用于访问对象的数据。(行为:run、read..)

<?php
//自定义 汽车类
class Car{
//成员变量
var $name;//名字
var $color;//颜色
/成员函数 /
function run(){
echo $this -> color . $this -> name . "在行驶";
}
}
//$m 汽车类 Car产生的对象实例
$m1 = new Car();
//给对象变量赋值
$m1 ->name = "小鹏汽车";
$m1 ->color = "红色";
$m1 -> run();

?>
构造函数:是一种特殊的函数。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。
( __construct定义构造函数)

<?php
class stu{
var $name;
var $age;
//构造函数 用来创建对象时初始化对象,即为对象成员变量赋初始值
function __construct($n,$a){
$this->name=$n;
$this->age=$a;
}

    function read(){
           echo "年龄" .$this->age."的".$this->name."在读书";

    }
}
//创建一个 Stu类的 学生对象实例
$s1 = new stu("李华",20);

$s1->read();

?>
继承:
PHP 使用关键字 extends 来继承一个类,PHP 不支持多继承
class Child(子类) extends Parent(父类) {
// 代码部分
}

方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。

<?php
class Car{
//成员变量
var $name;
var $color;
/成员函数 /
function run(){
echo $this -> color . $this -> name . "在行驶";
}
}
//定义了Bus继承了Car
class bus extends Car{
var $count;
/成员函数 /
//方法重写
function run(){
echo "载客量".$this->count . $this -> color . $this -> name . "在行驶";
}

}

//创建一个Bus类的Bus对象
$bus = new Bus();
$bus->name = "56路公交车";
$bus->color = "蓝色";
$bus->count = "30";
$bus->run();
//打印 带有父类的对象

// var_dump($bus);

?>

<?php
class animal{
//成员变量 属性
var $name;
var $color;

    //成员函数 方法
    function run(){
           echo $this->color."的".$this->name."在跑";

    }
}
class Dog extends animal{
    var $age;
    //重写 子类 父类
    //方法名一样
    function run(){
        echo "年龄". $this->age. "岁的" .$this->color."的".$this->name."在跑";

    }

}
$d = new Dog();
 $d->name = "旺财";
 $d->color = "黄色";
 $d->age = 5;
 $d = new sheep();
 $d->name = "小白";
 $d->color = "白色";
 $d->age = 6;
$d->run();

?>
问题:请编写一个计算器类。

描述:类中有两个成员变量表示操作数,通过类的构造方法可以为成员变量赋值。当调用“加法”成员方法时返回两个操作数相加的结果。同理,再实现“减法”、“乘法”和“除法”。

<?php
class Calculator{
var $number1;
var $number2;

    function addition()//加法
    {
        echo $this->number1."+".$this->number2."=".($this->number1+$this->number2);
    }

    function subtraction()//减法
    {
    echo $this->number1."-".$this->number2."=".($this->number1-$this->number2);
    }

    function multiplication()//乘法
    {
    echo $this->number1."*".$this->number2."=".$this->number1*$this->number2;
    }

    function division()//除法
    {
    echo $this->number1."/".$this->number2."=".$this->number1/$this->number2;
    }
}


    $num = new Calculator();
    $num->number1 = 100;
    $num->number2 = 20;


    var_dump($bus);
    $num->addition();
    echo"<br>";
    $num->subtraction();
      echo"<br>";
    $num->multiplication();
      echo"<br>";
    $num->division();

?>

php面向对象

原文地址:https://www.cnblogs.com/wwx09/p/13856635.html

发表评论

0/200
0 点赞
0 评论
收藏
为你推荐 换一批