php面向对象(一)---2017-04-17
重点:定义类与实例化类;访问修饰符;构造函数
一、面向对象
面向对于与面向过程的主要区别在于:前者包含类和对象的概念
二、类和对象
1、类是由众多对象抽象(归纳总结)出来的东西 代表所有对象的特性
2、对象是由累实例化出来的东西 具有自己的特点 真实存在的 一切皆对象
3、定义类
class 加类名(首字母大写){}
eg:
class Ren
{
var $name; ----成员变量
var $age;
function eat() -----成员方法或函数
{
}
}
4、实例化 (因为类是抽象的,不能直接用)
$r = new Ren(); -------实例化一个人
$r ->name = "张三"; ---------调用成员变量
$r->age = 1;
$r->eat(); ---------调用成员方法
$r1 = new Ren();-------实例化第二个人
$r2 = new Ren();-------实例化第三个人
5、访问修饰符 非常重要 ( 成员变量一般都是private,成员方法一般都是public)
(1)public 公开的
class Ren
{
public $name;
public $age;
public function eat()
{
}
}
(2)protected 受保护的 只能在该类和该类的子类里访问
(3)private 私有的 只能在该类访问
class Ren
{
private $name;
private $age=2;
public function eat()
{
echo $this->age; --- this代表该对象(谁调用ear()就代表该对象);不是该类
}
}
$r = new Ren();
三、构造函数(无论写不写都存在,不写只是看不到而已)
用于初始化变量 默认为public
1、 特点
(1)写法特殊
function 类名(){} -----------以前用的,现在用也没错
function__construct(){} ------------现在用的
(2)执行时间特殊 -----------在实例化时就执行
Eg1:
class Ren
{
private $sex="男";
function __construct()
{
$this->sex;
}
public function eat()
{
}
}
$r = new Ren();
$r->eat();
Eg2:带参数
class Ren
{
private $sex;
function __construct($s)
{
$this->sex=$s;
}
public function eat()
{
}
}
$r = new Ren(“女”);
$r->eat();
php面向对象(一)---2017-04-17的更多相关文章
- 关于asp.net执行exe程序时权限不够的解决办法(2015.04.17更新)
一,本文背景 长话短说:asp.net项目中需要用到PDF转换成SWF文件,用户上传后自动调用pdf2swf.exe转换. 但有个问题,执行时权限不够,导致一直报错(滚动条一直在往下滚,刷屏中),见下 ...
- http://www.liangxiansen.cn/2017/04/06/consul/
Consul 使用手册 | 一个梦 http://www.liangxiansen.cn/2017/04/06/consul/ 基于Consul的分布式锁实现 https://mp.weixin.qq ...
- win10 如何配置 java jdk1.8环境变量(2017.8.17 )jdk1.8.0_144
win10 如何配置 java jdk 环境变量 2017.8.17 本篇还适用于 windows server 2012. windows server 2014+ 一.安装 下载 jdk 64位 ...
- 2017.9.17校内noip模拟赛解题报告
预计分数:100+60+60=220 实际分数:100+60+40=200 除了暴力什么都不会的我..... T1 2017.9.17巧克力棒(chocolate) 巧克力棒(chocolate)Ti ...
- 【LeetCode】BFS || DFS [2017.04.10--2017.04.17]
[102] Binary Tree Level Order Traversal [Medium-Easy] [107] Binary Tree Level Order Traversal II [Me ...
- Ubuntu 14.04 16.04 17.10 + Win10 双系统安装记录 + 分区大小选择办法
安装了N遍,重要的东西在此记录. 参考了 http://www.libinx.com/2017/five-steps-win10-ubuntu-dual-boot/ 忠告:为了让日后喘气能匀呼些,要选 ...
- 使用Visual Studio 2017 C++17模块(module)特性
环境: win7_x64旗舰版.VS2017企业版 一.安装VS2017 1.1 安装VS2017时,必须要勾选“使用C++的modules开发”选项 1.2 安装成功后,会在VS安装目录Micros ...
- 3.修改更新源sources.list,提高软件下载安装速度(2017.04.05)
2017年4月5日再次更新源 1.切换到root用户(如果已经是root用户就直接看第二步) dnt@HackerKali:~$ su 密码: 2.用文本编辑器打开sources.list,手动添加下 ...
- April 24 2017 Week 17 Monday
Much effort, much prosperity. 越努力,越幸运. I have ever seen this sentence in many people's signature of ...
- Image Processing and Computer Vision_Review:HPatches A benchmark and evaluation of handcrafted and learned local descriptors——2017.04
翻译 HPatches:手工和学习本地描述符的基准和评估——http://tongtianta.site/paper/8979 摘要:在本文中,我们提出了一个评估本地图像描述符的新基准.我们证明现有数 ...
随机推荐
- db2 load乱码问题
在使用db2过程中经常需要从一个库里拿数据到自己库里来,通常需要将源表的数据导为数据文件,通过数据文件load到自己库里. 这个过程如果两个库的字符编码不一致,常规导入导出就会出现中文乱码. 以下是两 ...
- 分页控件AspNetPager学习笔记
1.AspNetPager简介 AspNetPager是一款开源.简单易用.可定制化等等各种优点的Web分页控件. 2.使用方法 1)下载AspNetPager.dll文件(http://www.we ...
- MacOS无法登录App Store修复
MacOS无法登录App Store修复 2017-03-10 21:13:39 by:SemiconductorKING 先上图: 惨红色的提示信息,把你拒之App Store门外,但是对之放弃. ...
- WeMall商城系统的Android app商城中的wemall-mobile代码
wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改. [适合研究学习,支持wemall3.x版本] 1.快 ...
- Team Foundation Server 基本功能
Team Foundation Server(以下简称TFS)作为Microsoft发布的一个主要用于团队源代码管理工具,以敏捷开发作为其最大的特点而占领部分市场.该文主要介绍 TFS 在 Visua ...
- HTTP协议&SOCKET协议
一. HTTP协议是什么? 我们在浏览器的地址栏里输入的网站地址叫做 URL(UniformResourceLocator,统一资源定位符).就像每家每户都有一个门牌地址一样,每个网页也都有一个Int ...
- springmvc框架原理
1. 用户发送请求至前端控制器DispatcherServlet 2. DispatcherServlet收到请求调用HandlerMapping处理器映射器. 3. 处理器映射器根据请求url ...
- MySQL从库忽略某些错误
z熬配置MySQL主从同步的时候常常会因为主库的中SQL语句的错误造成从库的同步出现错误,一旦从库同步出现错误就会造成同步的卡壳影响后续的同步: 可以在从库的配置文件中加入如下的参数,使从库可以自动忽 ...
- SQL Server的学习
一.建库和表1.新建数据库语法: CREATE DATABASE SuperMarket//建立一个名为SuperMarket的数据库. 2.打开数据库语法: USE SuperMarket//打开刚 ...
- Java Swing客户端小项目
记录一下两个用java swing写的客户端. 项目1: 关键词:swing jtable 代码如下: 1.主类: package com.my.agent.client; import java. ...