博客列表 >抽象类的实现继承以及接口实现CURD同时扩展1-2个方法2019年10月9日

抽象类的实现继承以及接口实现CURD同时扩展1-2个方法2019年10月9日

努力拼搏----赵桂福的博客
努力拼搏----赵桂福的博客原创
2019年10月10日 14:26:08912浏览

今天学习php抽象类,虽然之前也学过php的知识,但是,今晚学习的最彻底,也理解的更深入。感谢php中文老师。

下面将实例演示如下:

  主要是 实现了抽象类,继承,同时实现了方法及属性。

一、先看一个没有使用抽象类的例子,其实使用了属性重载设置属性的值。

          

实例

<?php

 
 namespace _1000;
 class Person1{
 	
 	protected $name;
 	public function  __construct($name='sz'){
 		$this->name=$name;
 	}
 	
 	public function getName(){
 		return $this->name;
 	}
 	
 	public function __set($name,$value){//属性重载
 		$this->$name=$value;
 	}
 }
 
 $ob= new Person1();
 echo  $ob->getName();
 
 
 $ob->name='老王大哥';//实现属性的重载
 echo $ob->getName();
 
 echo  Person1::class;
?>

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

<?php
//抽象的学习,抽象具体指的是 抽象方法
//首先定义一个抽象类
abstract class Person2{
 	
 	protected $name;
 	public function  __construct($name='sz'){
 		$this->name=$name;
 	}
 	
 	public function getName(){
 		return $this->name;
 	}
 	
 abstract	public function  setName($value);//抽象方法
 }

//1/抽象类不能偶实例化
//2/抽象方法必须在子类中实现
//实现一个新类继承抽象类并实现相关功能
class stu extends Person2{
	
	public  function  __construct($name){
		 parent::__construct($name);
	}
	
	public function setName($value){
		$this->name=$value;
	}
}

$objs= new  stu('赵桂福');
echo  $objs->getName();
$objs->setName('赵老师');
echo $objs->getName();

?>

运行实例 »

点击 "运行实例" 按钮查看在线实例


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议