面向对象是程序的一种设计方式,它利于提高程序的重用性,使程序结构更加清晰。
1、面向过程与面向对象有什么区别呢?
面向过程就是分析出解决问题所需要的步骤,然后再用函数把这些步骤逐一实现。
面向对象就是把构成问题的事物分解成各个对象,建立对象的目的并不是为了完成某一个 步骤,而是为了
述了某个事物在解决问题过程中的行为。
2、面向对象三大特性
主要特征:封装、继承、多态.
权限修饰符分别有:
public公有的 protected受保护的 private私有的
public公有的:可以在类外及类内使用;
protected受保护的:可以在子类及本类中使用;
private私有的:只能在本类中使用;
访问普通成员属性及方法:
①类内:使用
t
h
i
s
来
进
行
操
作
②
类
外
:
使
用
实
例
化
之
后
的
对
象
this来进行操作 ②类外:使用实例化之后的对象
this来进行操作②类外:使用实例化之后的对象obj来进行操作
例子:
<?php
/**
* 学生类
*/
class Student
{
//这是学生的4个属性
private $no;
private $name;
private $sex;
private $age;
//构造方法
function __construct($no,$name,$sex,$age)
{
$this->no = $no;
$this->name = $name;
$this->sex = $sex;
$this->age = $age;
}
//自我介绍
public function say(){
printf("自我介绍:我叫%s,年龄:%d",$this->name,$this->age);
}
//析构方法
function __destruct()
{
echo '正在执行析构方法 ';
}
}
//实例化对象
$stu1 = new Student(1001,'张三','男',20);
$stu1->say();
总结一下:
__construct: 定义构造方法的关键字
定义构造方法时,可以无参数,也可以有参数,或者多个参数。
t
h
i
s
:
表
示
当
前
对
象
,
只
有
在
类
的
方
法
中
,
当
访
问
成
员
变
量
(
属
性
)
或
自
己
的
方
法
时
,
才
会
用
到
this : 表示当前对象,只有在类的方法中,当访问成员变量(属性)或自己的方法时,才会用到
this:表示当前对象,只有在类的方法中,当访问成员变量(属性)或自己的方法时,才会用到this
比如:
t
h
i
s
−
>
n
a
m
e
,
其
中
的
n
a
m
e
实
际
上
就
是
指
属
性
this->name ,其中的name 实际上就是指属性
this−>name,其中的name实际上就是指属性name