PHP-----类与对象,成员方法,成员属性,构造方法,析构方法
php里面的类-----class XX{},通过类的定义,可以使用调用类里面的成员属性和成员方法。
对象---一个类就是一个对象,一个对象可以有多个属性,一个类可以有多个成员方法。
构造方法:一个类只能有一个构造方法,系统会默认有一个构造方法function __construct(){},如果有两个一样的构造函数,那么就会覆盖前面的构造函数;如果系统有默认的构造函数,并且用户自定义了一个构造函数,那么采用用户的构造函数,系统会忽略默认的构造函数。php4里面采用function 类名(){}来创建构造函数,php5使用__construct(){}创建构造函数。构造函数的功能是初始化对象。
析构方法:一个类只能有一个析构方法,如果类里面没有指定析构方法,那么就不会调用析构方法(删除垃圾);先进去的对象后删除,后进去的对象先删除。function __destruct(){}不能传递参数。
类的调用不需要地址符&,会自动调用类里面的内容。

面向对象的简易计算器:
界面code
<html>
<head>
<title></title>
</head>
<body>
<form action="227.php" method="post">
四则运算:
第一个数字<input type="text" value=""name="num1" />
第二个数字<input type="text" value=""name="num2" />
运算符号:<select name="operation">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="submit" value="计算"/>
</form>
</body>
</html>
调用code
<?php
require_once '228.php'; $num1=$_REQUEST['num1'];
$num2=$_REQUEST['num2'];
$operation=$_REQUEST['operation']; $paxsterOne=new paxster();
echo '计算结果'.$paxsterOne->addSomething($num1,$num2,$operation); ?>
Class code
<?php
class paxster{ public function addSomething($num1,$num2,$operation){
$result=0;
if($operation=="+"){
$result=$num1+$num2;
}elseif($operation=="-"){
$result=$num1-$num2;
}elseif($operation=="*") {
$result=$num1*$num2;
}elseif($operation=="/"){
$result=$num1/$num2;
}
return $result;
}
} ?>
PHP-----类与对象,成员方法,成员属性,构造方法,析构方法的更多相关文章
- JAVA:类,对象,成员属性,成员方法,构造方法,类变量,类方法<2>
一.类的定义 一个全面的类定义是比较复杂的, 定义如下:
- Java学习第二篇:类,对象,成员属性,成员方法,构造方法,类变量,类方法
一.类的定义 一个全面的类定义是比较复杂的, 定义如下:
- 类的声明与实例化及构造方法析构方法(PHP学习)
<?php class human{ public static $leg=2; public $name = 'leo'; public $age = '25'; public functio ...
- 01 语言基础+高级:1-2 面向对象和封装_day06【类与对象、封装、构造方法】
day06[类与对象.封装.构造方法] 面向对象类与对象三大特征——封装构造方法 能够理解面向对象的思想能够明确类与对象关系能够掌握类的定义格式能够掌握创建对象格式,并访问类中的成员能够完成手机类的练 ...
- 0604-面向对象、类与对象、类、static、构造方法/析构方法
一.面向对象 1.面向过程:一个人分步骤完成某个事情 2.面向对象:某件事情拆分为多个任务,由每个对象独立完成,最后调用整合为一个完整的项目 3.三要素:继承.封装.多态. 封装:私有化属性 提供公共 ...
- C#用反射实现两个类的对象之间相同属性的值的复制
在进行实体转换操作的时候如果需要在对两个实体之间两个属性字段差不多相同的类要进行一个互相的转换,我们要把a对象的所有字段的值都复制给b对象,我们只能用b.属性=a.属性来写,如果属性字段太多的话,就要 ...
- Python面向对象2:类与对象的成员分析及self
# 3. 类和对象的成员分析- 类和对象都可以存储成员,成员可以归类所有,也可以归对象所有- 类存储成员时使用的是与类关联的一个对象- 独享存储成员是是存储在当前对象中- 对象访问一个成员时,如果对象 ...
- python-面向对象-06_私有属性和私有方法
私有属性和私有方法 01. 应用场景及定义方式 应用场景 在实际开发中,对象 的 某些属性或方法 可能只希望 在对象的内部被使用,而 不希望在外部被访问到 私有属性 就是 对象 不希望公开的 属性 私 ...
- 02.php面向对象——构造方法&析构方法
<?php //自己写的构造方法 class Computer{ public function Computer(){ echo '构造方法'; } } new Computer();//这样 ...
随机推荐
- Apache Spark技术实战之6 -- spark-submit常见问题及其解决
除本人同意外,严禁一切转载,徽沪一郎. 概要 编写了独立运行的Spark Application之后,需要将其提交到Spark Cluster中运行,一般会采用spark-submit来进行应用的提交 ...
- freemarker判断对象是否为空
freemarker中显示某对象使用 ${name}. 但如果name为null,freemarker就会报错.如果需要判断对象是否为空: <#if name??> …… </# ...
- java基础学习总结——基础语法1
一.标识符
- C++ Primer Pluse_8_课后题
#include <iostream> #include <string> #include<cstring> using namespace std; void ...
- css样式管理
css命名 传统网站页面(企业级),大概就是about,product,register等,他们的名字较好区分,他们的样式整体也不会很大,用简单的驼峰法就够了,或者简单的模块. 非传统企业页面,命名驼 ...
- ubuntu /etc/network/interfaces 中配置虚拟链路
ubuntu /etc/network/interfaces 中配置虚拟链路 平常做一些关于网络的测试时,像一些需要在二层上运行的功能,一个网卡不足够的情况下,可使用 ip link 工具加一些虚拟的 ...
- final关键字用法总结
在java中,可能使用到final关键字修饰的有数据.方法和类. 一.final 修饰数据 有final修饰的数据是用来告诉编译器一块数据是恒定不变的,有时数据恒定不变是很有用的,比如: 1.一个永不 ...
- (九)串行口方式0 拓展并行输入端口 74LS165 芯片
74LS165芯片讲解: 外接一个同步移位寄存器 74LS165芯片,拓展一个 8 位 并行输入端口的电路, 可将接在74LS165芯片的8个开关 S0——S7 的状态 通过 串行口方式 0 读到 单 ...
- .net 直接输出远程文件到浏览器和下载文件保存到本机
利用了xmlhttp,实现代码比较简单具体实现如下: 首先bin文件引入,com->microsoft xml v3.0 具体代码如下: protected void Button1_Click ...
- H2.64的远程回放--开篇
之前有2周一直在研究H.264的远程回放, 不是本机播放哦. 实现的步骤: 1. 先保证解码H.264 2. H2.64文件的解析, 当然是为了回放的速度 3. H.264帧的传输, 我用的是TCP ...