2008年11月23日

优点


配置

缓存
编译

应用
assign 分配值(可以是数组)
display 取名称
section 分段
{section name=s loop=$stu}
{$stu[s].name}
{sectionelse}.....{/section}


posted @ 2008-11-23 17:09 郭兴华 阅读(305) | 评论 (0)编辑 收藏

2008年10月20日

什么是接口
成员属性全部为抽象或常量 的特殊抽象类
接口的创建
interface demo{
const NAME="guoxinghua";
function Fun1();
function Fun2();
}

抽象类 接口

1.类中至少有一个抽象方法

2.前需加ABSTRACT

类中全部为抽象方法

抽象方法前不用加ABSTRACT
接口抽象方法属性为public
成员属性必须为常量

共同点

本身不能实例化

继承后必须实现



普通类引用接口的例子:
class mypc implements demo,demo2,demo3{}


抽象类引用接口的例子:
abstract class mypc implements demo,demo2,demo3{}

先继承后接口,单继承多接口
class mypc extends root implements demo,demo2,demo3{}
接口与接口之间的引用
interface demo extends demo2{}

<?php
interface demo{
const NAME="guoxinghua";
function fun1();
}
interface demo2{

function fun2();
}
class MyPc implements demo{
function fun1(){
echo "fun1.";}

$p=new MyPc();
$p->fun1();

echo MyPc::NAME;//一般常量大写
class MyPs extends demo implements demo2{
}
//先继承后引用
$p=new MyPs();
$p->fun1();
echo MyPs::NAME;?>

posted @ 2008-10-20 23:48 郭兴华 阅读(223) | 评论 (0)编辑 收藏

const
<?php
final class MyPc{
const NAME="guoxinghua";
static function power(){
echo self::NAME.",电脑开中..";
}}
$p=new MyPc();
$p->power();
?>
static
<?php
class MyPc{
public $name="my computer"
function power(){
echo $this->name."电脑开机中";
}
}
class My extends MyPc{


function power(){
echo MyPc::power()."*****************";}}
$p=new My();
$p->power();
?>
final
<?php
class MyPc{
public $name="my computer"
function power(){
echo $this->name."电脑开机中";
}
}
class My extends MyPc{


function power(){
echo MyPc::power()."*****************";}}
$p=new My();
$p->power();
?>
self
<?php
final class MyPc{
const NAME="guoxinghua";
static function power(){
echo self::NAME.",电脑开中..";
}}
$p=new MyPc();
$p->power();
?>

posted @ 2008-10-20 22:23 郭兴华 阅读(194) | 评论 (0)编辑 收藏

16:58:53
A:继承
extends
单根继承

class MyPc{....}
class MyComputer extends MyPc{......}

继承的目的:重用

2:重载

重载的目的:节省空间

3:protected的意义
两个冒号的含义
 1<?php
 2
 3class Root{
 4function dayin{
 5return "a print<br>";
 6}}
 7
 8class Sound extends Root{
 9function dayin{
10return " B print<br>";//return $this->dayin();
11
12
13}
14
15
16$p=new Sound();
17echo $p->dayin();
18echo $p->dayin2();
19
20?>

 

1、抽象关键字 :abstract




2、抽象方法和抽象类的定义



3、抽象类和方法使用规则




<?php
abstract class cl1{//抽象类的目的就是定义抽象方法
abstract function fun1();
abstract function fun2();
abstract function fun3();
abstract function fun4();
abstract function Ok();
}
class2 
extends cl1{//实现类必须重写抽象类的方法
function fun1(){};
function fun2(){};
function fun3(){};
function fun4(){};
function OK(){};
}

?>

类中常用关键字
final
不能继承,不能重载

left
不用实例化访问类的成员

self::类内部成员(属性或者方法)
一般访问静态成员

static
类似全局变量,不用每个实例化
class class1{
static $name;
static function fun{....}
}静态方法内部禁止出现非静态内容
类名称::静态成员
 self::静态成员

const
定义类当中的常量
类似定义外部的常 量的关键字define();

posted @ 2008-10-20 17:24 郭兴华 阅读(226) | 评论 (0)编辑 收藏

什么是封装?
为什么要封装?
三个关键字
public //向外公开属性方法





private//只能在本类中访问

protected//受保护的在子类和父类的之间 访问

访问相关函数
__set(),__get()
__set($name,)

 1<?php
 2class MyPc{
 3public $name;
 4function __construct($name=""){
 5return $this->name=""}
 6function power(){
 7return "打开电源,正在开机。。。"}
 8//protected $price;
 9//private function vod(){
10//$this->name;}
11}
12$pc1=new MyPc('my computer');
13$pc1->name="your computer";
14?>

posted @ 2008-10-20 16:30 郭兴华 阅读(163) | 评论 (0)编辑 收藏

工具:eclispePHPstudio
代码提示快捷键:ATL+/
打开文件的办法:CTRL+单击
CodeTemplate:PHP&&Html
ERROR:提示
改变页面的代码编码





PHP中的OOP
传统开发的短处
重用性差
软件可维护性差
没有很好的扩展性

OOP要素:
1.抽象性;
2.封装性;
3.共享性,
4.对象的结构;
 CREATE CLASS:class 方法名{....};
成员方法和属性
class MyPc{
public $name;
var $price;
function vod(){
return "PHP100";
}
}
四:
实例化类
new 函数

$pc1=new MyPc();
$pc1->name;


通过类创建对象
1.声明 变量修饰符用public 不用var
2.$this关键字
3.__construct()
初始化函数
4.析构函数
__destruct()
垃圾回收机制
对象不用的时候释放内存空间
先进后出
示例
 1<?php
 2
 3class  MyPc{
 4
 5var $key;//PHP4使用
 6public $name;//PHP5
 7
 8function vod(){
 9return "guoxinghua";}
10function game(){
11return "play game"}
12function internet(){
13return "play on the net";}
14}
15$pc1=new MyPc();
16$pc1->key="guoxinghua";
17
18echo $pc1->key;
19$pc1->vod();
20funciton __destruct(){
21echo "<br>____________".$this->name.}
22
23?>




posted @ 2008-10-20 16:14 郭兴华 阅读(215) | 评论 (0)编辑 收藏

仅列出标题