10.25 (下午) 开课一个月零二十一天(抽象)

本文介绍了PHP面向对象的基础概念,包括继承、多态、抽象类、接口等核心特性,并通过具体示例展示了静态成员与普通成员的区别及应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//继承
//子类可以继承父类的一切
//特点:单继承
//函数的重写

//多态
//当父类引用指向子类实例,由于子类对父类的方法进行了重写,父类引用在调用该方法的时候表现出的不同
//如果一个方法需要一个父类的参数,可以给一个子类对象

//静态
//普通成员
//普通成员是属于对象的

//静态成员
//静态成员属于类的

//关键字:static
//self关键字:在类里面代表该类
//在静态方法里面不能调用普通成员
//在普通方法里面能够调用静态成员

class FenBi
{
	public $length; //粉笔的长度
	public static $color; //粉笔的颜色
	
	static function show()
	{
		echo "粉笔颜色是:".self::$color;
	}
	
	function XianShi()
	{
		echo "显示:".self::$color;
	}
}

$f = new FenBi(); //先造一个对象
$f->length; //用对象去调用普通成员

FenBi::$color = "红色"; //使用类名调用静态成员
FenBi::show();
$f->XianShi();

//抽象
//抽象类:关键字abstract
//特点:不能被实例化,只能被继承
//目的:为了派生子类,控制子类

abstract class Dog
{
	public $name;
	
	function Jiao()
	{
		echo "汪汪";
	}
}

class JinMao extends Dog
{
	
}

$d = new Dog();

//接口
//极度抽象的类
//接口里面不能包含成员变量,只能包含成员方法
//成员方法可以没有函数体
//接口关键字:interface
//实现接口的类,必须实现接口里面的所有方法

interface IUSB
{
	function read(); //读的方法
	function write(); //写的方法
}

//鼠标的驱动类
class Mouse implements IUSB
{
	function read()
	{
		echo "鼠标点击了";
	}
	function write()
	{
		echo "给鼠标一个指令";
	}
}

//键盘的驱动类
class JianPan implements IUSB
{
	function read()
	{
		echo "键盘输入了内容";
	}
	function write()
	{
		echo "给键盘指令";
	}
}

$m = new Mouse();
$m->write();

$j = new JianPan();
$j->read();



//接口:API

 

转载于:https://www.cnblogs.com/l5580/p/6025242.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值