php之类,对象(二)继承性,static静态的,const常量
三大特性 之二 继承性:
1.概念:如果一个类有子类,那么该子类会继承父类的一切东西,但私有成员访问不到。
2.在定义子类时需要加关键字:extends
class Text extends Info
{
}
3.特点:单继承。一个类只能有一个父类(类似于一个儿子只能有一个父亲),一个父类可以有多个子类(父亲可以有多个儿子)
4.如果父类中有构造函数,子类在实例化的时候要按照父类构造函数的标准来实现
class Info
{
public $code;
public $name;
public $sex;
function __construct($s)
{
$this->sex=$s;
}
}
class Text etends Info
{
}
$t=new Text();
$t->$code="p001";
5.子类与父类中有相同的方法(function),在子类中可以直接写相同的方法,叫做子类的重写。父类中的方法会被覆盖,只显示子类中的
若也想保存父类的方法不被覆盖,可加关键字"parent::",parent只能在子类中使用。
6.final 关键字:用来修饰类,代表该类是最终类。最终类不能被继承。
static 静态成员:
1.类里面的普通成员是属于对象的,不是属于类的,在调用时是用对象来调用。
什么叫静态成员,静态成员是属于类的,不是属于每个对象的
2.定义静态成员用关键字static修饰 :public static $class
3.访问静态成员用双冒号:Info::$class="0305";
4.定义静态方法:static function Text()
{
}
调用静态方法: Info::Text();
5.静态方法里无法调用普通成员,可使用self调用静态成员。self代表该类,$this代表该对象。
static function Text()
{
echo self::$class;
}
6.普通方法里可以调用静态成员
function Say()
{
echo self::$class;
}
定义常量:const
class Info
{
const π=3.1415926;
}
将类里面经常用到的东西定义为常量,方便使用,只在类里面使用。
php之类,对象(二)继承性,static静态的,const常量的更多相关文章
- Java 基础 enum枚举类 的创建/使用/接口继承 ,以及手动创建枚举类的对象为:public static final
笔记: import java.lang.*; /**一:枚举类 : enum Season implements info { s1(),s2(),s3(),s4() }; //s1--s4 放在S ...
- php笔记(二)PHP类和对象之Static静态关键字
PHP类和对象之Static静态关键字 静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用.静态属性不允许对象使用->操作符调用. class Car { pr ...
- 基础学习day06---面向对象二---static,类的初始化和调用顺序、单例模式
一.static关键字 1.1.static关键字 静态:static用法:是一个修饰符,用于修饰成员(成员变量,成员函数)static 修饰的内容,所有对象共享当成员被静态修饰后,就多了一个调用方式 ...
- java自学第4期——:Scanner类、匿名对象介绍、Random类、ArrayList集合、标准类格式、String类、static静态、Arrays工具类、Math类(1)
一.Scanner类 1.api简介: 应用程序编程接口 2.Scanner类: 作用:获取键盘输入的数据 位置: java.util.Scanner. 使用:使用成员方法nextInt() 和 ne ...
- 什么是静态代码块?java中如何使用空参构造方法自动生成不同名字的对象,使用非静态的属性和静态属性有什么区别,原因是什么?如何理解static关键字
静态代码块?类加载就执行,最先执行 class demo{ static int num; static{ num=10; num*=3; System.out.println("haha& ...
- jvm源码解读--09 创建oop对象,将static静态变量放置在oop的96 offset处 第二篇
先打断点systemDictionary.cpp 1915行 Universe::fixup_mirrors(CHECK); 进入 void Universe::fixup_mirrors(TRAPS ...
- jvm源码解读--08 创建oop对象,将static静态变量放置在oop的96 offset处
之前分析的已经加载的.Class文件中都没有Static 静态变量,所以也就没这部分的解析,自己也是不懂hotspot 将静态变量放哪里去了,追踪源码之后,看清楚了整个套路,总体上来说,可以举例来说对 ...
- android 尽量不要使用static静态变量
使用静态static静态变量潜在性问题: 1.占用内存,并且内存一般不会释放: 2.在系统不够内存情况下会自动回收静态内存,这样就会引起访问全局静态错误. 3.不能将activity作为static静 ...
- Javase部分回顾(static (静态修饰符),修饰方法,单利的设计模式, 封装)
static (静态修饰符) 1.修饰成员变量 静态变量的访问方式: 方式一 : 通过对象访问. 对象.变量名 ...
随机推荐
- strnclmp和strlen函数的用法
一.strncmp 函数 函数原型: 1.函数原型:int strncmp (const char *s1, const char *s2, size_t n) 2.头文件: <string. ...
- Ubuntu 下启动/停止/重启mysql服务
1:sudo start mysql 2:sudo stop mysql 3:sudo restart mysql
- Javascript Promise 学习 (中)
时隔多日,对promise有了多一点点的了解. 最近用angularjs 做开发,所以研究了一下它的 $q 功能不算很强大,算是简化版的 Q.js 参考了一下源码,不过我的等级还差很多... 作为学习 ...
- uva 10032 Problem F: Tug of War
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...
- ural 1020 Rope
#include <cstdio> #include <cstring> #include <cmath> #include <algorithm> # ...
- 可以供MFC调用的,QT实现的DLL(使用qt-solutions的qtwinmigrate实现)
MFC和QT的消息循环机制不同,所以,要让QT写的DLL可以供MFC调用,要做一点特殊的处理 #include <qmfcapp.h> #include <qwinwidget.h& ...
- ACM2039_三角形三边关系
#include <iostream> using namespace std; int main(int argc, char* argv[]) { double a,b,c; int ...
- Acdream1157---Segments (CDQ分治)
陈丹琦分治~~~其实一些数据小的时候可以用二维或者多维树状数组做的,而数据大的时候就无力的题目,都可以用陈丹琦分治解决. 题目:由3钟类型操作:1)D L R(1 <= L <= R &l ...
- SRM 601 DIV1
A 枚举x , 然后对于确定的x , 最后总的apple数对应了唯一的orange数,因此问题转化为求apple的取值范围; apple的取值范围: max为每个bag取最多的apple , min为 ...
- Java 8 默认方法和多继承深入解析
以前经常谈论的Java对比c++的一个优势是Java中没有多继承的问题. 因为Java中子类只能继承(extends)单个父类, 尽管可以实现(implements)多个接口,但是接口中只有抽象方法, ...