PHP学习笔记4-类/命名空间/成员方法/类方法
命名空间 namespace 类 class
创建文件Hello.php,namespace是jikexueyuan:
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2015/6/28
* Time: 13:41
*/
//命名空间
namespace jikexueyuan;
class Hello {
public function sayHello(){
echo 'Hello jikexueyuan<br/>';
}
}
再创建文件Hello.php,namespace是jkxy:
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2015/6/28
* Time: 13:44
*/
//命名空间
namespace jkxy;
class Hello {
public function sayHello(){
echo 'Hello jkxy<br/>';
}
}
创建文件index.php:
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2015/6/28
* Time: 12:43
*/
header("Content-type: text/html; charset=utf-8");
require_once 'jkxy/Hello.php';//require_once:调用一个文件
require_once 'jikexueyuan/Hello.php';
$h = new \jkxy\Hello();//创建类的实例
$h->sayHello();//通过实例访问内部功能
$d = new \jikexueyuan\Hello();
$d->sayHello();
用require_once调用文件jkxy/Hello.php和jikexueyuan/Hello.php,在通过实例化类访问类的内部功能
构造方法:会在创建类的实例的时候执行
创建文件Man.php
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2015/6/28
* Time: 13:56
*/
class Man {
/**
* @param int $age 年龄//传入参数的类型
* @param string $name 名字
*/
public function __construct($age,$name){
// echo 'Construct a man';
$this->_age = $age;//通过this记录下来
$this->_name = $name;
}
}
public function getAge(){//外界可以访问
return $this->_age;
}
public function getName(){
return $this->_name;
}
private $_age,$_name;
}
在index.php中用下面方式使用:
require_once 'Man.php'; $m = new Man(20,"Vito");//会在创建类的实例的时候执行 echo $m->getName(); echo $m->getAge();
成员方法 举例:
public function getAge(){//成员方法
return $this->_age;
}
静态方法/静态常量/静态变量 在Man.php中添加如下代码:
public static function say_Hello(){//静态方法:主要用来描述类属性
echo "Hello PHP";
}
private static $NUM = 0;//静态变量
const MAX_MAN_NUM = 200;//静态常量
在index.php中执行静态方法:
Man::say_Hello();//执行静态方法
在Man.php中添加代码,在index.php中用到静态变量和静态常量:
Man::$NUM++;//每创建一次就自加
if(Man::$NUM>Man::MAX_MAN_NUM){
throw new Exception("不能创建更多");
}
在index.php中使用静态变量和静态常量
for($i=0;$i<Man::MAX_MAN_NUM;$i++){
new Man(10,"Vito");
}
PHP学习笔记4-类/命名空间/成员方法/类方法的更多相关文章
- python学习笔记4_类和更抽象
python学习笔记4_类和更抽象 一.对象 class 对象主要有三个特性,继承.封装.多态.python的核心. 1.多态.封装.继承 多态,就算不知道变量所引用的类型,还是可以操作对象,根据类型 ...
- Java学习笔记之---类和对象
Java学习笔记之---类和对象 (一)类 类是一个模板,它描述一类对象的行为和状态 例如:动物类是一个类,动物们都有属性:颜色,动物们都有行为:吃饭 public class Dog { Stri ...
- Java学习笔记——File类之文件管理和读写操作、下载图片
Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...
- UML学习笔记:类图
UML学习笔记:类图 有些问题,不去解决,就永远都是问题! 类图 类图(Class Diagrame)是描述类.接口以及它们之间关系的图,用来显示系统中各个类的静态结构. 类图包含2种元素:类.接口, ...
- swift学习笔记3——类、结构体、枚举
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- java学习笔记--常用类
一.Math类:针对数学运算进行操作的类 1.常用的方法 A:绝对值 public static int abs(int a) B:向上取整 public static double ceil( ...
- 学习笔记 Java类的封装、继承和多态 2014.7.10
1.问题:toString()没搞懂? int a = 1; Integer aa = new Integer(a); //这是实现的过程 System.out.println("Hello ...
- Java学习笔记-File类的基本方法
要渐渐养成写博客的习惯-----> 前段时间看Mars的java中的I/O流没怎么懂,发现I/O流好难啊.今天重新看一遍其他教学,还有书籍,做些笔记,记录下每天的学习生活. File类的一些方法 ...
- 学习笔记——Java类和对象
今天学习了Java的类和对象的相关知识,由于Java面向对象的编程的思想和C++几乎一样,所以需要更多的关注Java的一些不同之处. 1.类 1.1 在类这一块,除了基本的成员变量,成员方法,构造函数 ...
随机推荐
- load_library(linker.cpp:759): library "libmaliinstr.so" not found
1.02-07 15:19:09.277: E/linker(16043): load_library(linker.cpp:759): library "libmaliinstr.so&q ...
- python 10 min系列三之小爬虫(一)
python10min系列之小爬虫 前一篇可视化大家表示有点难,写点简单的把,比如命令行里看论坛的十大,大家也可以扩展为抓博客园的首页文章 本文原创,同步发布在我的github上 据说去github右 ...
- ssh无密登录
ssh登录一般两种方式: 1.密码登录 2.密钥验证无需密码 使用方式:1.生成密钥 2.将公钥追加到authorized_keys中,需要注意的是执行权限需为600,这里因而第一次添加使用的是> ...
- squid客户端命令
常用squid客户端命令: squidclient -p mgr:info #取得squid运行状态信息: squidclient -p mgr:mem #取得squid内存使用情况: squidcl ...
- Oracle中SQL语句学习五(统计分组语句group by和having)
oracle(41) 在 应用系统开发中,进行需要统计数据库中的数据,当执行数据统计时,需要将表中的数据进行分组显示,在统计分组中是通过group by子句.分组函数.having子句共同实现的.其中 ...
- 转: 深入理解 AngularJS 的 Scope
查看 DEMO.参考 StackOverflow. ng-switch ng-switch 的原型继承和 ng-include 一样.所以如果你需要对基本类型数据进行双向绑定,使用 $parent ...
- Android 4.4及以上系统下应用的状态栏颜色渐变效果的实现
上一篇转载的博文里讲到了怎么开启状态栏透明的效果,不过如果在有ActionBar的情况下,会出现状态栏透明而ActionBar横亘在状态栏和内容之间的丑陋情况,如下图: 通过百度之后,发现了GitHu ...
- CALayer3-层的属性
一.隐式动画属性 * 在前面几讲中已经提到.每个UIView内部都默认关联着一个CALayer,我们可用称这个Layer为Root Layer(根层). 全部的非Root Layer.也就是手动创建的 ...
- linux下TUN/TAP虚拟网卡的使用
转载:http://wushank.blog.51cto.com/3489095/1306849 tun/tap 驱动程序实现了虚拟网卡的功能,tun表示虚拟的是点对点设备,tap表示虚拟的是以太网设 ...
- C#中的虚方法和抽象方法(Thirteenth Day)
今天在云和学院学了很多,我这次只能先总结一下C#中的虚方法和抽象的运用. 理论: 虚方法: •用virtual修饰的方法叫做虚方法 •虚方法可以在子类中通过override关键字来重写 •常见的虚方法 ...