php (十三) 面向对象 封装

面向对象的封装性:
1,就是把对象的成员(属性,方法)结合成一个独立的相同单位,并尽可能隐藏对象的内部细节
public protected
private 私有的,用这个关键字修饰的成员,只能在对象内部访问(只有用$this访问),不能在对象外部使用
 
示例:
 

class Person{
private $name;
private $age;
private $sex;
function __construct($name="",$age=20,$sex="male"){
$this->name=$name;
$this->age=$age;
$this->sex=$sex;
}
function getPro($name){
return $this->$name;
}
function setAge($age){
if($age>100$age<0){
return;
}
$this->age=$age;
}
function getAge(){
if($this->age<30){
return $this->age;
}elseif($this->age<40){
return $this->age-5;
}elseif($this->age<50){
return $this->age-10;
}else{
return $this->age-15;
}
}
function say(){
echo "我的名字是:".$this->name.",年龄是:".$this->age.",性别是:".$this->sex.'<br>';
}
function __destruct(){
echo $this->name.",再见"."<br>";
}
}
$p1=new Person("rayhooo",26,"male");
$p1->say();
echo $p1->getPro("name").'<br>';
$p1->setAge(45);
echo $p1->getAge().'<br>';  

 
 

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索对象
, 面向对象
, function
, this
, name
age
面向对象 封装、js面向对象封装、面向对象的封装、js面向对象封装插件、js面向对象封装案例,以便于您获取更多的相关知识。

时间: 2024-08-02 18:00:27

php (十三) 面向对象 封装的相关文章

iptables 面向对象封装

iptables 面向对象封装   转载请与作者联系,转载时请务必标明文章原始出处和作者信息及本声明. 文档出处: http://netkiller.sourceforge.net/ | http://netkiller.github.com       使用案例   Author代码   ########################################   # Test   ########################################   test = Fi

求java 实现面向对象 封装的概念

问题描述 求java实现面向对象封装的概念现在课改了6.0很多知识解释的不彻底求高人指点

Javascript之面向对象--封装_javascript技巧

第一步:做一个"手机的类" var MobilePhone = (function(){ ---- })() 第二步:考虑这个类,里需要那些类的私有属性,这里我想定义的是实例出来手机的数量 var MobilePhone = (function(){ //私有属性 var count = 0; //代表手机的数量 })() 第三步:创建一个构造函数,即实例时候,对产生的新象的一个初始化,例如属性,方法的初始化;在这个例子中,每一个手机都会有颜色,大小,价格属性.这里的构造函数也是一个闭

艾伟_转载:面向对象封装了啥

面向对象封装了变化,或者更加准确的说,应该是封装了不变的地方,留出了变化的地方可以在需要的时候再去变,那么什么地方会变化呢? 1.数据的变化 比如一个工厂生产一种纸盒子,程序要计算它的体积,需要有长.宽.高的尺寸,盒子的尺寸是固定的,那么在代码里面直接硬编码,比如长1,宽2,高3,方法返回1*2*3,甚至直接返回6,没有任何问题.现在需求发生了变化,这个工厂生产两种尺寸的盒子,另一种长2宽2高2,这时候变化的就是数据.使用变量来抵御数据的变化.我现在只要在计算体积的方法里设长宽高三个参数,在方法

面向对象封装了啥

面向对象封装了变化,或者更加准确的说,应该是封装了不变的地方,留出了变化的地方可以在需要的时候再去变,那么什么地方会变化呢? 1.数据的变化 比如一个工厂生产一种纸盒子,程序要计算它的体积,需要有长.宽.高的尺寸,盒子的尺寸是固定的,那么在代码里面直接硬编码,比如长1,宽2,高3,方法返回1*2*3,甚至直接返回6,没有任何问题.现在需求发生了变化,这个工厂生产两种尺寸的盒子,另一种长2宽2高2,这时候变化的就是数据.使用变量来抵御数据的变化.我现在只要在计算体积的方法里设长宽高三个参数,在方法

OC面向对象—封装

一.面向对象和封装 面向对象的三大特性:封装(成员变量).继承和多态 在OC语言中,使用@interface和@implementation来处理类. @interface就好像暴露在外面的时钟表面,像外界提供展示以及接口.@implementation就好像隐藏在时钟内部的构造实现,把具体的实现封装了起来. 二.Set方法 在开发过程中,考虑到安全性要求,我们一般不在成员变量名前面使用@public.@protected等关键字修饰,而是使用Set方法来为对象提供成员变量的值.在set方法的内

javascript 面向对象封装与继承_javascript技巧

整理一下js面向对象中的封装和继承. 1.封装 js中封装有很多种实现方式,这里列出常用的几种. 1.1 原始模式生成对象 直接将我们的成员写入对象中,用函数返回. 缺点:很难看出是一个模式出来的实例. 代码: 复制代码 代码如下:        function Stu(name, score) {             return {                 name: name,                 score: score             }       

Java中的面向对象封装、抽象、继承、多态特点

 面向对象主要有四大特性:封装.抽象.继承和多态.各自定义: 封装:在面向对象语言中,封装特性是由类来体现的,我们将现实生活中的一类实体定义成类,其中包括属性和行为(在Java中就是方法),就好像人类,可以具有name,sex,age等属性,同时也具有eat(),sleep()等行为,我们在行为中实现一定的功能,也可操作属性,这是面向对象的封装特性: 抽象:抽象就是将一类实体的共同特性抽象出来,封装在一个抽象类中,所以抽象在面向对象语言是由抽象类来体现的.比如鸟就是一个抽象实体,因为抽象实体并不

javascript对XMLHttpRequest异步请求的面向对象封装_AJAX相关

复制代码 代码如下: function CallBackObject() { this.XmlHttp = this.GetHttpObject(); } CallBackObject.prototype.GetHttpObject = function() //动态为CallBackObject的原型添加了GetHttpObject共有方法 { //第一步:创建XMLHttpRequest对象 //进行兼容性判断 var xmlhttp; /*@cc_on @if (@_jscript_ver