<?php

声明一个类

class mycar{

etc.

//成员方法

}

class mycar{

function drive(){

etc.

}

}

?>

对象的实例化

内存中分栈和堆,栈定长,堆较大不能直接访问。实例化后,实例名称放在栈内,实例放在堆内,通过实例名找到堆里的实例。另外还有代码段和初始化静态段。

使用:赋值和取值

$p1->name = "aa";

$p1->name;

$p1->run();

内部引用本对象 $this;

构造方法__construct()与析构方法__destruct()

function __construct($name$sex$age)
    {
        // 通过构造方法传进来的$name给成员属性$this->name赋初使值
        $this->name = $name;
        // 通过构造方法传进来的$sex给成员属性$this->sex赋初使值
        $this->sex = $sex;
        // 通过构造方法传进来的$age给成员属性$this->age赋初使值
        $this->age = $age;

    }

function __destruct() 
    {
        echo "再见" $this->name;

    }

10分钟肯定是我忽悠的。

封装性是面象对象编程中的三大特性之一,封装性就是把对象的属性和服务结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节,包含两个含义:

1. 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位(即对象)。

2. 信息隐蔽,即尽可能隐蔽对象的内部细节,对外形成一个边界〔或者说形成一道屏障〕,只保留有限的对外接口使之与外部发生联系。

私有的成员是不能被外部访问的, 因为私有成员只能在本对象内部自己访问,比如,$p1这个对象自己想把他的私有属性说出去,在say()这个方法里面访问了私有属性,这样是可以。

比如

class a{

private $a;

private function say(){ echo”hello world”}

}

$car = new a();

a->a = “xx”;

echo a->a;

a->say();

赋值、取值、调用方法都会报错;

可能会用到构造函数,来支持private属性赋值;如

function _construct($a){

$this->a = $a;

}

这样就可以通过 $car = new a(“xx”)来提供支持;

构造方法是公认的共有方法,一般不要去私有化他;

私有属性在外部不可用,但在内部可以,所以通过这种方法提供接口,类似于

private $a;

function setA($age){

    if ($age<0 || $age>130) // 在给属性赋值的时候,为了避免非法值设置给属性
    return;
    $this->age = $age;

}

function getA($age){

RETURN($THIS->AGE);

}

通过这样的方式,实现在类外对私有属性的操作。

转载于:https://www.cnblogs.com/07byte/p/5823819.html

10分钟学会php面相对象基础(Ⅰ)相关推荐

  1. 大规模文件存储怎么办?10分钟学会阿里OSS对象存储

    一. 前言 最近有很多小伙伴问健哥,如果我们要进行大规模的文件存储该怎么做? 其实实现文件存储的技术有很多,如果我们在网上搜索一下,你会发现实现的技术简直是五花八门,比如有一种技术叫FastDFS就可 ...

  2. pulsar 容量_[Pulsar系列] 10分钟学会Pulsar消息系统概念

    Apache Pulsar Pulsar是一个支持多租户的.高性能的服务与服务之间消息通讯的解决方案,最初由雅虎开发,现在由Apache软件基金会管理. Pulsar在Yahoo的生产环境运行了三年多 ...

  3. 大学不教的20小时定律,10分钟学会受用终身

    大学不教的20小时定律,10分钟学会受用终身 2018-05-05 20:10:35 来源: 网易公开课 "20小时速成",一听到这句话,脑海中浮现的就是网络上那些小广告:&quo ...

  4. UWP开发入门(十九)——10分钟学会在VS2015中使用Git

    原文:UWP开发入门(十九)--10分钟学会在VS2015中使用Git 写程序必然需要版本控制,哪怕是个人项目也是必须的.我们在开发UWP APP的时候,VS2015默认提供了对微软TFS和Git的支 ...

  5. python写好的代码怎么给别人使用-10分钟学会用python写游戏!Python其实很简单!...

    原标题:10分钟学会用python写游戏!Python其实很简单! Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以在这里给各位看官们准备了高价值Python学习视频教程 ...

  6. 百度贴吧自动发帖_引流网赚之百度贴吧引流窍门:实操引流教程百度贴吧零成本自动顶帖+10分钟学会豆瓣顶帖引流...

    引流网赚之百度贴吧窍门:实操引流教程<百度贴吧零成本自动顶帖>+<10分钟学会豆瓣顶帖引流> 关于百度贴吧的引流方式有很多,像常见的关键词排名引流,比如,百度贴吧引流效果好不好 ...

  7. NiosII软处理器快速入门- 10分钟学会NiosII(1)

    http://hi.baidu.com/hieda/blog/item/7f69080e9efb80ce7bcbe13d.html Nios简单介绍: Nios II是一个用户可配置的通用RISC嵌入 ...

  8. 手机版python3h如何自制游戏_Python 飞机大战|10 分钟学会用 python 写游戏

    Python 飞机大战|10 分钟学会用 python 写游戏 2018 年 python 语言大火, 这把火看趋势已然延续到了 2019 年! 除了在科学计算领域 python 有用武之地之外, 在 ...

  9. #今日论文推荐#1小时学会走路,10分钟学会翻身,世界模型让新生机器狗掌握多项技能

    #今日论文推荐#1小时学会走路,10分钟学会翻身,世界模型让新生机器狗掌握多项技能 人类宝宝在出生后的第1年里,就会逐渐掌握协调能力,学习坐.立.翻滚和爬行. 那么机器人呢? 机器人能完成多复杂的任务 ...

最新文章

  1. 每天一个知识点linux(八)手动创建交换分区
  2. Postfix邮件服务器搭建之roundcube webmail安装与配置
  3. 跟我学大数据分析:多维度数据分析报告
  4. Interview:算法岗位面试—10.29下午上海某电子(偏传统ML算法,外企)数据结构算法+晚上国内某保险公司(偏AI算法,世界500强)技术面试之分类算法、回归算法、聚类算法等细节考察
  5. mapper代理(十一)
  6. 从0到1告诉你搭建完整Python+requests接口自动化测试框架!
  7. 安卓工控主板运行时会自动重启_工控机日常维护的方法与步骤
  8. HOOK NtCreateSection
  9. 金融财务数据分析报告PPT模板
  10. TI OSAL资料 整理
  11. Sublime LiveReload安装问题
  12. 一些代码美化的实用网站
  13. sqlite3 查询表结构信息
  14. Android之利用volley搭建简洁网络框架
  15. myeclipse6.5-8.5 激活码 秘钥 及使用
  16. 我们需要“第二人生”吗?[Second life]
  17. 王者战力查询教程,每天可查,数据准确~
  18. 计算机access分数比例,[access查询]关于分数段统计问题
  19. 萌新做点小玩意儿DAY-15 线性表(顺序表)及其应用
  20. Java 中添加背景音乐

热门文章

  1. 使用SDL打造游戏世界之入门篇 - 1
  2. c#中结构与类的区别
  3. asp.net 的性能计数器
  4. shell语法以及监控进程不存在重启
  5. 通过Windows10上的VS Code打开远端Ubuntu上的项目操作步骤
  6. python远程登录linux命令,Python+requests通过paramiko远程登录Linux执行sh命令
  7. ospf 环回口的路由条目_OSPF (4)
  8. mysql5.7与8.0用那个_MySQL 5.7 vs 8.0,哪个性能更牛?
  9. java axis2 开发_基于Apache axis2开发Java Web服务
  10. 鸿蒙法则的能力,真正厉害的人,都懂得这五个做事法则,如能悟透,成功不难...