php extends理解

从php5开始,php也开始面向对象了,而我们在工作中常用的就是extends 继承的使用,

<?php
//php的继承 extends 单一继承 重载是否覆盖所有内容,访问父类的方法 ::方法名
	class Pname{
		function Pkk(){
			return "i am is a parent";
		}
	}
	
	class Cname extends Pname{
		function Shuchu(){
			
			return $this->Pkk(). "my child".Pname::Pkk();//可以打印父类的
		}

	}
	$init = new Cname();
	echo $init->Shuchu();

	class A//类的声明 与实例化 this关键字是只当前对象,
{
    function foo()
    {
        if (isset($this)) {
            echo '$this is defined (';
            echo get_class($this);
            echo ")\n";
		 } else {
            echo "\$this is not defined.\n";
        }
    }
}

class B
{
    function bar()
    {
        A::foo();
    }
}

$a = new A();
$a->foo();
A::foo();
$b = new B();
$b->bar();
B::bar();
echo "<br/>";
//抽象方法必须放在抽象类中
	abstract class C//抽象方法不能被实例化,只能被extends 并且实现所有父类的方法,
	{
		abstract function wokao();//后面没有大括号,static静态的只在方法范围内使用
	}
	class D extends C//抽象类是一种规范
	{
		function wokao(){
			return "this is a abstrace class";
		}
	}
	$Hstrace = new D();
	echo $Hstrace->wokao();
	echo "<br/>";
	//php中关键字 final static 
	final class class2{//定义类的时候不能被继承,方法的时候不能被重载

	}
	//self用类来访问当前类中的内容的关键字
	class class4
	{
		static $name;//静态变量单独占用内存 不会创建多个对象
		static function haha(){}//静态方法内部都要用静态的内容,可以用self 类名::来访问静态成员
	}

?>
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值