- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
面向对象的PHP Web编程
展开查看详情
1 .Object Oriented PHP CS380 1
2 .Why use classes and objects? PHP is a primarily procedural language small programs are easily written without adding any classes or objects larger programs, however, become cluttered with so many disorganized functions grouping related data and behavior into objects helps manage size and complexity CS380 2
3 .Why use classes and objects? PHP is a primarily procedural language small programs are easily written without adding any classes or objects larger programs, however, become cluttered with so many disorganized functions grouping related data and behavior into objects helps manage size and complexity CS380 2
4 .Why use classes and objects? PHP is a primarily procedural language small programs are easily written without adding any classes or objects larger programs, however, become cluttered with so many disorganized functions grouping related data and behavior into objects helps manage size and complexity CS380 2
5 .Why use classes and objects? PHP is a primarily procedural language small programs are easily written without adding any classes or objects larger programs, however, become cluttered with so many disorganized functions grouping related data and behavior into objects helps manage size and complexity CS380 2
6 .Why use classes and objects? PHP is a primarily procedural language small programs are easily written without adding any classes or objects larger programs, however, become cluttered with so many disorganized functions grouping related data and behavior into objects helps manage size and complexity CS380 2
7 .Class usage example 7 <? php # this code could go into a file named use_point.php include(" Point.php "); $p1 = new Point(0, 0); $p2 = new Point(4, 3); print "Distance between $p1 and $p2 is " . $ p1->distance ($p2) . "
8 .Basic inheritance 8 class ClassName extends ClassName { ... } PHP The given class will inherit all data and behavior from ClassName class Point3D extends Point { public $z; public function __construct($x, $y, $z) { parent::__construct($x, $y); $this->z = $z; } ... } PHP CS380
9 .Static methods, fields, and constants 9 static $name = value; # declaring a static field const $name = value; # declaring a static constant PHP static fields/methods are shared throughout a class rather than replicated in every object # declaring a static method public static function name(parameters) { statements; } PHP CS380 ClassName :: methodName (parameters); # calling a static method (outside class) self:: methodName (parameters); # calling a static method (within class) PHP
10 .Abstract classes and interfaces 10 interface InterfaceName { public function name(parameters); public function name(parameters); ... } class ClassName implements InterfaceName { ... PHP CS380 abstract class ClassName { abstract public function name(parameters); ... } PHP
11 .Abstract classes and interfaces CS380 11 interfaces are supertypes that specify method headers without implementations cannot be instantiated; cannot contain function bodies or fields enables polymorphism between subtypes without sharing implementation code abstract classes are like interfaces, but you can specify fields, constructors, methods also cannot be instantiated; enables polymorphism with sharing of implementation code