+ -
当前位置:首页 → 问答吧 → 读设计模式?????----标哥

读设计模式?????----标哥

时间:2007-05-16

来源:互联网

复制PHP内容到剪贴板
PHP代码:

<?php
interface IUser
{
  function getName();
}

class User implements IUser
{
  public static function Load( $id ) 
  {
        return new User( $id );
  }

  public static function Create( ) 
  {
        return new User( null );
  }

  public function __construct( $id ) { }

  public function getName()
  {
    return "Jack";
  }
}

$uo = User::Load( 1 );
echo( $uo->getName()."\n" );
?>

复制PHP内容到剪贴板
PHP代码:

<?php

class User 
{
  public static function Load( $id ) 
  {
        return new User( $id );
  }

  public static function Create( ) 
  {
        return new User( null );
  }

  public function __construct( $id ) { }

  public function getName()
  {
    return "Jack";
  }
}

$uo = User::Load( 1 );
echo( $uo->getName()."\n" );
?>

结果都是jack.为什么要加接口

[ 本帖最后由 heixiake 于 2007-5-15 16:56 编辑 ]

作者: heixiake   发布时间: 2007-05-15

:L

作者: heixiake   发布时间: 2007-05-15

不是吧

作者: heixiake   发布时间: 2007-05-15

估计以后会有其他类也实现这个接口吧
似乎是方便控制程序,或者间接实现多重继承吧!

作者: niohe   发布时间: 2007-05-16

接口是面向对象中比较重要的概念, 是为了增强程序的扩展性.
如: 由于程序功能的增加,可能会把User用于细分,增加VIP用户.这时候只要实现IUser接口
class VIP implements IUser { ... }
那么 VIP 类就可以用在所有 User 类可以用的程序中而不需要去改变那些程序.

作者: cator   发布时间: 2007-05-16

有点思路

作者: heixiake   发布时间: 2007-05-16