php 面向对象之继承、多态和静态方法
<?php //继承;子类可以继承父类的一切
//特点:单继承 //父类
class Ren
{
public $name;
public $sex;
public $yuyan; function Say()
{
echo $this->name."正在讲话!";
}
} //美国人的子类
class America extends Ren
{
public $ziben; //子类对父类的方法重写
function Say()
{
parent::Say(); //调用父类的Say()方法
echo "hello !";
}
}
//中国人的子类
class China extends Ren
{
public $shehui;
public $wumai; //对父类方法重写
function Say()
{
echo "你好!";
}
} /*$c = new China();
$c->Say();*/ //var_dump($a); //多态
//条件:1.必须要继承。2.子类要对父类的方法进行重写。3.父类引用指向子类实例
//概念:当父类的引用指向子类实例的时候,由于子类对父类的方法进行了重写,父类引用在调用相应的方法的时候表现出来的不同。
/*
Ren r = new China();
r->Say(); r = new Amreica();
r->Say();*/ $r = new America();
$r->Say(); $r = new China();
$r->Say(); ?>
继承和多态
<?php /*class FenBi
{
public $length; //属于对象的
public static $color='red'; //属于类的,静态 //返回数据库的连接对象
public static function LianJie()
{
FenBi::$color;
return "连接对象";
}
public function Test()
{
echo FenBi::$color;
}
}*/ /*FenBi::$color;
FenBi::LianJie();*/
/*
$r = new FenBi();
$r->Test();*/ //普通成员是属于对象的
//静态成员是属于类的 //普通成员方法里面可以调用静态成员
//静态方法里面不能调用普通成员 class Form
{
public static $bs=0; public function show()
{
echo "显示窗体";
} public function Close()
{
Form::$bs=1;
echo "窗体关闭";
} public function shownext()
{
$f2 = new Form();
return $f2;
} public function JianCe()
{
if(Form::$bs==0)
{
echo "F2没有关闭";
}
else
{
echo "F2已经关闭";
}
}
} $f1 = new Form();
$f1->show(); echo Form::$bs; $f2 = $f1->shownext();
$f2->show();
$f2->Close(); echo Form::$bs; $f1->JianCe(); ?>
静态方法
php 面向对象之继承、多态和静态方法的更多相关文章
- php面向对象 封装继承多态 接口、重载、抽象类、最终类总结
1.面向对象 封装继承多态 接口.重载.抽象类.最终类 面向对象 封装继承多态 首先,在解释面向对象之前先解释下什么是面向对象? [面向对象]1.什么是类? 具有相同属性(特征)和方法(行为)的一 ...
- python面向对象(封装,继承,多态)
python面向对象(封装,继承,多态) 学习完本篇,你将会深入掌握 如何封装一个优雅的借口 python是如何实现继承 python的多态 封装 含义: 1.把对象的属性和方法结合成一个独立的单位, ...
- Java基础——面向对象(封装——继承——多态 )
对象 对象: 是类的实例(实现世界中 真 实存在的一切事物 可以称为对象) 类: 类是对象的抽象描述 步骤: 1.定义一个类 (用于 描述人:) ( * 人:有特征和行为) 2.根据类 创建对象 -- ...
- python面向对象之继承/多态/封装
老师说,按继承/多态/封装这个顺序来讲. 子类使用父类的方法: #!/usr/bin/env python # coding:utf-8 class Vehicle: def __init__(sel ...
- python基础语法15 面向对象2 继承,多态,继承json模块中JSONEncoder,并派生出新的功能
继承 1.什么是继承? 继承是一种新建类的方式,新建的类称之为子类或派生类,继承的父类称之为基类或超类. - 在Python中,一个子类可以继承多个父类.(面试可能会问) - 在其它语言中,一个子类只 ...
- java面向对象(封装-继承-多态)
框架图 理解面向对象 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程强调的是功能行为 面向对象将功能封装进对象,强调具备了功能的对象. 面向对象是基于面向过程的. 面向对象的特点 ...
- -1-2 java 面向对象基本概念 封装继承多态 变量 this super static 静态变量 匿名对象 值传递 初始化过程 代码块 final关键字 抽象类 接口 区别 多态 包 访问权限 内部类 匿名内部类 == 与 equal
java是纯粹的面向对象的语言 也就是万事万物皆是对象 程序是对象的集合,他们通过发送消息来相互通信 每个对象都有自己的由其他的对象所构建的存储,也就是对象可以包含对象 每个对象都有它的类型 也就是 ...
- day25 面向对象继承,多态,
这两天所学的都是面向对象,后面还有几天也是它,面向对象主要有三个大的模块,封装,继承,多态,(组合),昨天主要讲了面向对象的命名空间,还有组合的用法,今天是讲的继承还有继承里面所包括的钻石继承,以及多 ...
- Python 面向对象编程 继承 和多态
Python 面向对象编程 继承 和多态 一:多继承性 对于java我们熟悉的是一个类只能继承一个父类:但是对于C++ 一个子类可以有多个父亲,同样对于 Python一个类也可以有多个父亲 格式: c ...
- Python进阶(十六)----面向对象之~封装,多态,鸭子模型,super原理(单继承原理,多继承原理)
Python进阶(十六)----面向对象之~封装,多态,鸭子模型,super原理(单继承原理,多继承原理) 一丶封装 , 多态 封装: 将一些东西封装到一个地方,你还可以取出来( ...
随机推荐
- webkit模块介绍
一.Webkit模块 用到的第三方库如下: cairo 一个2D绘图库 casqt Unicode处理用的库,从QT中抽取部分代码形成的 expat 一个XML SAX解析器的库 freety ...
- 用Filter程序实现静态HTML页面的访问保护
今天为练习Filter的用法编写了一个小程序. 当用户通过article的超链接读取文章的时候,会通过Filter进行检测有没有登录.只有登录的读者才能跳到文章页面,否则跳到登录页面. 文章就用简单的 ...
- 【js】JSON.stringify 语法实例讲解
语法: JSON.stringify(value [, replacer] [, space]) value:是必选字段.就是你输入的对象,比如数组,类等. replacer:这个是可选的.它又分为 ...
- android 读取sd卡中的图片
一.获取读取SD卡的权限 <!--在SDCard中创建与删除文件权限 --> <uses-permission android:name="android.perm ...
- User表格式
"_id":基本是700多 "name":"xx01" "pwd":"123"
- Eigenvectors and eigenvalues
http://setosa.io/ev/eigenvectors-and-eigenvalues/ Explained Visually Tweet By Victor Powell and Lew ...
- xss之全面剖析
XSS 全称(Cross Site Scripting) 跨站脚本攻击, 是Web程序中最常见的漏洞.指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会在用户的 ...
- PHP iconv函数字符串转码导致截断问题
1.iconv函数原型 string iconv ( string $in_charset , string $out_charset , string $str ) in_charset:输入的字符 ...
- Spring入门_01
<bean id="userAction" class="com.umgsai.spring.UserAction"> <property n ...
- VirtualBox下安装rhel5.5 linux系统
以前也用过VMware server和VMware workstation虚拟机,现在使用了一段时间VirtualBox,感觉它比较轻巧,很适合我,在Win7系统下用起来很方便.下面详细介绍下在Vir ...