- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP笔记面向对象编程研讨
面向对象的基本操作
基本概念:
对象 object,对应现实逻辑中的一个实体,是一个实体在计算机语言的一个表示。是一个数据,与数据的操作的集合体!
对象怎么来的?通过实例化类而生成!
类,class:使用计算机语言对一类事物的抽象。类似于图纸!用于规定某类对象的结构,但是本身不是具体对象!
实例化 instance,依据类的抽象定义,形成对象的操作,称之为实例化!
昆虫:一个定义,一类动物的抽象的概念上!
基本语法
声明类:使用关键字 class
class class_name {
????//成员
}
需要指定,该类下的实体(对象),应该有哪些特征,哪些属性,哪些操作!
示例:
声明一个学生对象,需要定义学生类:
class Student {
????//声明属性
? ? public $stu_name;
????public $stu_age;
????public $stu_gender;
????public $stu_money;
????public $stu_class;
????//声明方法
????public function baoming() {
????????echo 我要报名lt;br /gt;;
????}
}
数据,称之为属性,property,属于对象(类)的变量
操作,称之为方法,method,属于对象(类)的函数
在声明成员时,不能直接使用变量,需要使用关键字来声明
实例化类得到对象,new
使用 new 关键字即可:new 类;
new Student;
实例化后,典型的应该保存在变量里!
$s1 = new Student;
$s2 = new Student;
$s3 = new Student;
我们只需要设计图纸(定义类),不需要参数实例的过程
一个类可以被实例化多次!
操作对象
使用 -gt; 操作符,利用对象,访问其成员
语法:对象 -gt; 成员;
访问属性:
????$object -gt; stu_name;
????注意:属性名前没有 $
$s1 -gt; stu_name = quot;Bruce Leequot;;
var_dump($s1 -gt; stu_name);
echo lt;br /gt;;
var_dump($s2 -gt; stu_name);
对当前某个对象的属性的操作,只会影响当前对象;
输出结果为:
访问方法:
对象 -gt; 方法名();
$s1 -gt; baoming();
$s2 -gt; baoming();
如何在方法中,访问对象:$this
$this 这个,这个对象。调用该方法的对象
$this 就是一个局部变量!特殊在,方法被对象调用执行时,php会自动判断是哪个对象调用该方法,会使用该对象为方法内的 $this 赋值
示例:
class Student {
????pulic $stu_name;
????pulic $stu_money;
????pulic $stu_class;
????public function baoming() {
????????echo $this -gt; stu_name.我要报名lt;br /gt;;
????}
}
?$s1 -gt; baoming(); //$this = $s1
?$s2 -gt; baoming(); //$this = $s2
输出结果:
Tips :?
public ,是一个访问控制修饰符,适用于控制成员(属性和方法)的访问问题!protected , private。
测试:利用面向对象编程的方法,实现学生报名的业务逻辑
lt;?php
//分析实体:学生,学校,班级
//定义以上三个类
class Student {
//属性,数据
public $stu_id; //学号
public $stu_name;
public $stu_money;
public $stu_gender;
public $class_name; //班级
public $is_baoming; //是否报名
//报名动作
public function baoming() {
echo 我是,$this -gt; stu_name, ,我要报名lt;hr /gt;;
$this -gt; is_baoming = 1;
}
//缴费动作
public function jiaofei() {
echo 我是,$this -gt; stu_name, ,我要缴费,好贵啊lt;hr /gt;;
$this -gt; stu_money -= 6800;
}
//选择班级
public function xuanban
文档评论(0)