复制代码 代码如下:
class TEST
{
const NAME = 'value'; // 常量
public $name = 'value'; // 属性
public function name() // 方法
{
echo 'value';
}
}
?>
复制代码 代码如下:
class TEST
{
public static function name()
{
echo 'value';
}
}
?>
复制代码 代码如下:
class TEST
{
public static function name()
{
echo 'value';
}
}
//方法1:使用new关键字
$test = new TEST;
$test->name();
//方法2:使用“::”符号
TEST::name();
?>
复制代码 代码如下:
class TEST1
{
public $name = 0;
public function name()
{
$this->name = $this->name + 1;
}
}
$test1 = new TEST1;
$test2 = new TEST1;
$test1->name(); //$name1 == 1
$test2->name(); //$name1 == 1
/*--------------------------------------------*/
class TEST2
{
public static $name = 0;
public static function name()
{
TEST2::$name = TEST2::$name + 1;
}
}
TEST2::name(); // $name == 1
TEST2::name(); // $name == 2
?>
复制代码 代码如下:
abstract class TEST1 // 抽象
{
abstract public function name1();
public function name2()
{
}
}
class TEST2 extends TEST1 implements TEST3 // 继承
{
public function name1()
{
}
}
interface TEST3 // 接口
{
public function name2();
}
?>
复制代码 代码如下:
class TEST1 extends TEST2
{
public function name()
{
echo parent::name2();
echo TEST2::name2();
}
}
class TEST2
{
public function name2()
{
echo 'value2';
}
}
$test = new TEST1;
$test->name();
?>
复制代码 代码如下:
$test3 = clone $test1;
?>
复制代码 代码如下:
class TEST
{
public function __construct($para)
{
echo $para;
}
}
$test = new TEST('value'); // 显示 value
?>
复制代码 代码如下:
class TEST
{
public $property1 = 'value1';
public $property2 = 'value2';
public $property3 = 'value3';
public function name()
{
foreach($this as $key => $value)
{
print "$key => $value\n";
}
}
}
$test = new TEST;
foreach($test as $key => $value)
{
print "$key => $value\n";
}
$test->name();
?>
复制代码 代码如下:
class TEST1
{
public function name( TEST2 $para )
{
}
}
class TEST2
{
}
$test2 = new TEST2;
$test1 = new TEST1;
$test1->name('value'); // 会报错,因为这个参数必须是TEST2实例化以后的对象
$test1->name($test1); // 不会报错
?>