你问的是php吗?怎么听起来象c++呢?

解决方案 »

  1.   

    php中有接口和抽象类吗?你在哪里看到的呢?
      

  2.   

    PHP是单重继承的
    如果你建立了一个只有抽象方法的类,你就定义了一个接口(interface).
    PHP中有interface 和implements关键字. 你可以用interface来代替抽象类, 用implements来代替extends来说明你的类定义或使用一个接口/*注: 
    两种方法即指:
    1. abstract class aaa{} (注意aaa中只有抽象方法,没有一般方法)
    class bbb extends aaa{} (在bbb中覆写aaa中的抽象方法)
    2. interface aaa{}
    class bbb implements aaa{} (在bbb中覆写aaa中的抽象方法)
    */
    下面有一个网上的例子
      

  3.   

    <?php 
       //abstract root class 抽象根类 
       abstract class Shape 
       { 
           abstract function getArea(); //定义一个抽象方法 
       }    //abstract child class 抽象子类 
       abstract class Polygon extends Shape //多边形 
       { 
           abstract function getNumberOfSides(); 
       }    //concrete class 实体类 三角形类 
       class Triangle extends Polygon 
       { 
           public $base; 
           public $height;        public function getArea() //覆写计算面积方法 
           { 
               return(($this->base * $this->height)/2); 
           }        public function getNumberOfSides() //覆写边数统计方法 
           { 
               return(3); 
           } 
       }    //concrete class 实体类四边形 
       class Rectangle extends Polygon 
       { 
           public $width; 
           public $height;        public function getArea() 
           { 
               return($this->width * $this->height); 
           }        public function getNumberOfSides() 
           { 
               return(4); 
           } 
       }    //concrete class 实体类 圆形 
       class Circle extends Shape 
       { 
           public $radius;        public function getArea() 
           { 
               return(pi() * $this->radius * $this->radius); 
           } 
       }    //concrete root class 定义一个颜色类 
       class Color 
       { 
           public $name; 
       }    $myCollection = array(); //建立形状的集合,放入数组    //make a rectangle 
       $r = new Rectangle; 
       $r->width = 5; 
       $r->height = 7; 
       $myCollection[] = $r; 
       unset($r);    //make a triangle 
       $t = new Triangle; 
       $t->base = 4; 
       $t->height = 5; 
       $myCollection[] = $t; 
       unset($t);    //make a circle 
       $c = new Circle; 
       $c->radius = 3; 
       $myCollection[] = $c; 
       unset($c);    //make a color 
       $c = new Color; 
       $c->name = "blue"; 
       $myCollection[] = $c; 
       unset($c);    foreach($myCollection as $s) 
       { 
           if($s instanceof Shape) //如果$s是Shape类的实例 
           { 
               print("Area: " . $s->getArea() . 
                   "<br>\n"); 
           }        if($s instanceof Polygon) 
           { 
               print("Sides: " . 
                   $s->getNumberOfSides() . 
                   "<br>\n"); 
           }        if($s instanceof Color) 
           { 
               print("Color: $s->name<br>\n"); 
           }        print("<br>\n"); 
       } ?>
      

  4.   

    汗。你们的php是什么版本的?手册在哪里下载的?为什么我的手册里没有这种东西?
      

  5.   

    and  or  xor  __FILE__  exception  php_user_filter  
    __LINE__  array()  as  break  case  
    cfunction  class  const  continue  declare  
    default  die()  do  echo()  else  
    elseif  empty()  enddeclare  endfor  endforeach  
    endif  endswitch  endwhile  eval  exit()  
    extends  for  foreach  function  global  
    if  include()  include_once()  isset()  list()  
    new  old_function  print()  require()  require_once()  
    return()  static  switch  unset()  use  
    var  while  __FUNCTION__  __CLASS__  __METHOD__  这是我手册上的所有关键字列表了。没有abstract呢……