PHP--面向对象编程

(一)类的声明

类必须被定义后才能使用,定义一个类就是定义这一类对象的模板,定义属性和定义方法。

class[类名]{
	成员属性声明
	成员方法声明
}

定义一个空类:

<?php
class EmptyClass
{

}

注:
1、函数名、类名不区分大小写。
2、变量名区分大小写。

(二)成员方法

类中的函数也叫“成员方法”,函数和方法都可以实现一系列操作,唯一的区别是,函数是独立的代码实现功能实现,二方法是类的一部分,实现了类的功能

<?php
class Job
{
	function findJob($job_name)
	{
	echo '找到工作,工作职位是'.$job_name;
	}
	function jobList()
	{
	return['php工程师','java工程师']}
}

(三)类的实例化

类的实例化也成为创建对象。需要先声明对象是哪个类,同时指出变量名称。实例化是通过关键字new来声明,然后通过使用“对象名->成员”方法的形式,调用类中方法
创建(二)中Job类的对象:

<?php
class Job
{
	function findJob($job_name)
	{
	echo '找到工作,工作职位是'.$job_name;
	}
	function jobList()
	{
	return['php工程师','java工程师']}
}
$my_job = new Job();
$job_list = $my_job->jobList();
$my_job->findJob($job_list[0]);

Job为类,而my_job就是Job类的一个实例化,并且通过my_job调用类中的成员。结果为:找到工作,工作职位是php工程师。

(四)成员属性(成员变量)

成员属性,也称为成员变量,是类中的变量。成员属性保存类中的数据信息。成员方法之间通过成员属性进行信息传递和功能交互。定义一个成员属性的格式是:

<?php
class Job
{
	private $job_list = ['php工程师','java工程师'];
	
	function findJob($job_name)
	{
	echo '找到工作,工作职位是'.$job_name;
	}
	
	public function jobList()
	{
		return $this->job_list;
	}
}
$my_job = new Job();
$job_list = $my_job->jobList();
$my_job->findJob($job_list[0]);

类的方法和变量前面,都可以加上访问权限的关键字,通过这些关键字可以对方法和成员属性做一定的限制。

1.public(公共成员)

此标识该成员属性、方法是对其他所有代码公开,不写任何关键字是默认为public处理

2.private(私有成员)

此标识该成员属性、方法只可以在自己类的代码中使用,其他任何外部代码都无法访问和使用。即使是它的子类,也无法访问。

3.protected(保护成员)

和private关键字类似,都是禁止外部代码的直接访问,但是子类无法调用private的成员,却可以调用protected成员。即可以在本类和子类中被调用,其它地方不可以。

(五)类中常量

在类中,变量叫做“属性”,函数叫做“方法”,而常量也可以放在类中使用,一般叫做‘’类中常量”或“类常量”。可以把类中始终保持不变的值定义为常量。定义时不需要“$”符号,使用“const”.

<?php
class Job
{
	const JOB_LIST = ['php工程师','java工程师'];

	function findJob($job_name)
	{
	echo '找到工作,工作职位是'.$job_name;
	}
}
$my_job = new Job();
$my_job->findjob(Job::JOB_LIST[0]);

(六)静态变量

使用方式:
1:在类中时:"self::静态变量"2:在类的外部:"类名::静态变量"3:在类的外部:"对象名::静态变量"

(七)静态方法

被static修饰的成员方法被称为“静态方法”。静态方法在程序最开始是分配单独一块的内存空间,静态方法是被共享的。静态方法被调用时可以直接通过:“类名::方法名”形式调用,也可以直接实例化对象,通过“对象::方法名”形式调用。
在静态方法中,不能调用静态变量,但是普通方法可以调用静态变量。因为静态属性和方法被创建时,可能还没有任何这个类的实例可以被调用。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值