类和对象
类与对象关系:
类是描述一个事物的总称。
对象:万物皆对象,面向对象程序的单位就是对象,但对象又是通过类的实例化出来的,所以我们首先要做的就是如何来声明类, 做出来一个类很容易。–有类才有对象,先有类,再有对象。
类的声明格式
class 类名{
}
类可以理解为一个人的特征,如果我们要把这个人介绍给别人
那么首先, 你会介绍这个人姓名、性别、年龄、身高、电话、家庭住址等等。
然后,你要介绍这个人能做什么,会说英语,会开车、会跑步等等。
class 人
{
成员属性:姓名、性别、年龄、身高、电话、家庭住址
成员方法:会开车、会跑步、会说英语。
}
//定义一个'人类'(Person类)
clas Person{
//成员变量或者叫成员属性
var $name;//姓名
var $age; //年龄
var $sex; //性别
var $address; //住址
var $phone; //电话号码
// 下面是人的成员方法
// 这个人说英语的的方法
function sayEnglish()
{
echo "这个人在说英语";
}
// 这个人可以跑步的方法
function run()
{
echo "这个人在走路";
}
function car(){
echo "这个人在开车";
}
}
定义好一个类之后,我们只有实例化之后才能使用。
$对象名称 =new 类名称();
对象创建的几种格式
//定义一个'人类'(Person类)
clas Person{
//成员变量或者叫成员属性
var $name;//姓名
var $age; //年龄
var $sex; //性别
var $address; //住址
var $phone; //电话号码
// 下面是人的成员方法
// 这个人说英语的的方法
function sayEnglish()
{
echo "这个人在说英语";
}
// 这个人可以跑步的方法
function run()
{
echo "这个人在走路";
}
function car(){
echo "这个人在开车";
}
//创建对象的几种形式
//形式1
$c=new Person();//通过类,new出一个对象
//形式2
//通过一个对象,去new出对象,其实new出来的是旧对象所述类的新对象。
$c2=new c();
}
实例化对象之后,通过对象使用类中的方法和属性
对象名−>属性名;
c->name;
对象名−>方法;
c->run();
<?php
//定义一个'人类'(Person类)
class Person
{
//成员变量或者叫成员属性
var $name;//姓名
var $age; //年龄
var $sex; //性别
var $address; //住址
var $phone; //电话号码
// 下面是人的成员方法
// 这个人说英语的的方法
function sayEnglish()
{
echo "这个人在说英语";
}
// 这个人可以跑步的方法
function run()
{
echo "这个人在走路";
}
function car(){
echo "这个人在开车";
}
}
//创建对象的几种形式
//形式1
$c = new Person(); //创建实例对象$c
//给属性赋值
$c->name = "陈致远";
$c->age = 20;
$c->sex = "男";
$c->address = "湖南";
$c->phone = "123456";
//通过对象访问属性
echo "c的名字叫:".$c->name;
echo "c的年龄是:".$c->age;
echo "c的性别是:".$c->sex;
echo "c的住址为:".$c->address;
echo "c的电话是:".$c->phone;
$c->run();
$c->car();
?>
输出的结果是:c的名字叫:陈致远c的年龄是:20c的性别是:男c的住址为:湖南c的电话是:123456这个人在走路这个人在开车
类常量
常量的定义格式
class 类名{
const 常量名 = 常量值;
//不可以使用define()来定义!
}
常量的使用,是通过类名,并使用范围解析符(::)来取用的;
类名::常量名;
举例:
<?php
const ch=1;
define("ch2", 2);
class Test{
//定义类的常量
const PI=3.14;
const c=2.3;
}
//使用类常量
$p=Test::PI*7*7;
echo "p=".$p;
echo "<br/>";
echo "c=".Test::c;
?>
输出结果是:p=153.86 c=2.3
`