php面向对象知识
来源:互联网 发布:网络金融诈骗判王登科 编辑:程序博客网 时间:2024/05/20 17:58
介绍面向对象基本知识
<?php header("Content-type:text/html;charset=utf-8");//设置字符集// extends关键字用于说明该类继承自某个父类// class NbaPlayer extends Human//类继承类// $jordan = new NbaPlayer();// $jordan->eat("apple"); // 只要是Human类的子类的对象,就可以调用eat方法// extends关键字用于说明该类继承自某个父类class Perfect extends Human{public $name="名字";// 定义属性public $height="高度";// 定义属性 protected $weight; // 只有自身和子类可以访问到 private $age="40"; // private 类型的属性不能被对象外部访问,但是可以在对象内部使用 public static $president="David Stern";// 默认的构造函数,在对象被实例化的时候自动调用 // 构造函数通常用于初始化对象的属性值function __construct($name,$height) { print "析构函数执行". $name ."\n"; } // 析构函数在该对象不会再被使用的情况下自动调用 // 析构函数,用于清理程序中使用的系统资源,比如释放打开的文件等等 function __destruct() { print "构造函数执行" . $this->height . "\n"; } public function run() { echo "内部函数\n"; } public static function changePresident($newPrsdt){ static::$president = $newPrsdt; // self用于表示当前类,"::"操作符用于访问类的静态成员 // static关键字也可以用于访问当前类的静态成员 // echo $this->age . "\n"; // 不能在静态方法中使用this伪变量,也不能用对象的->方式调用静态成员 echo parent::$sValue . "\n"; // parent用于表示父类,可以用于访问父类的静态成员 } }/** * 接口 * 1. 接口的基本概念和基本使用方法 * 2. 接口里面的方法没有具体的实现 * 3. 实现了某个接口的类必须提供接口中定义的方法 * 4. 不能用接口创建对象,但是能够判断某个对象是否实现了某个接口 * 5. 接口可以继承接口(interface extends interface) * 6. 接口中定义的所有方法都必须是公有,这是接口的特性。 */interface ICanEat { public function eat($food);}/** * 抽象类 * 1. 抽象类允许类里面的部分方法暂时没有具体实现,这些方法我们成为抽象方法 * 2. 一旦类里面有抽象方法,这个类就必须是抽象类 * 3. 抽象类跟接口一样,不能直接实例化为对象 */// 抽象类前面以abstract关键字开始abstract class ACanEat { // 没有实现的方法需要设定为抽象方法 // 抽象方法需要在子类中实现 abstract public function eat($food); public function breath(){ echo "Breath use the air.\n"; }}// Human类实现了ICanEat接口class Human extends ACanEat { // 跟Animal类的实现是不同的 public function eat($food){ echo "Human eating " . $food . "\n"; }}$a = new Perfect("参数1","参数2");echo "</br>";// 调用对象的某个方法使用的语法是->符号,后面跟着方法的名称和一对括号$a->run();
阅读全文
0 0
- php面向对象知识
- PHP面向对象知识
- php面向对象知识
- php-面向对象-知识问答
- PHP面向对象知识总结
- php 面向对象知识体系
- php面向对象中的知识总结
- 插入排序、快速排序和php面向对象的知识
- 面向对象知识 63.89%
- 面向对象相关知识
- 面向对象知识总结
- 面向对象入门知识
- 面向对象知识总结
- C#面向对象知识
- 面向对象知识一
- 面向对象知识二
- 面向对象知识回顾
- 面向对象知识总结
- windows下dll开发杂记<一>
- 微信小程序--跳转页面的两种方法详解
- 代码模型--简单Java类
- C++:STL常用函数模块总结(set)
- ADO.NET数据库管理
- php面向对象知识
- JAVA面向对象练习03
- 机器学习实战--第一章
- Eclipse中servlet显示无法导包javax.servlet(导包错误,导不了)
- 微信小程序Ble设备连接与发送
- JVM调试
- Pandaland HDU
- string,wstring,cout,wcout 与中文字符的输入输出
- linspace