三大特性 之二 继承性:

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常量的更多相关文章

  1. Java 基础 enum枚举类 的创建/使用/接口继承 ,以及手动创建枚举类的对象为:public static final

    笔记: import java.lang.*; /**一:枚举类 : enum Season implements info { s1(),s2(),s3(),s4() }; //s1--s4 放在S ...

  2. php笔记(二)PHP类和对象之Static静态关键字

      PHP类和对象之Static静态关键字 静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用.静态属性不允许对象使用->操作符调用. class Car { pr ...

  3. 基础学习day06---面向对象二---static,类的初始化和调用顺序、单例模式

    一.static关键字 1.1.static关键字 静态:static用法:是一个修饰符,用于修饰成员(成员变量,成员函数)static 修饰的内容,所有对象共享当成员被静态修饰后,就多了一个调用方式 ...

  4. java自学第4期——:Scanner类、匿名对象介绍、Random类、ArrayList集合、标准类格式、String类、static静态、Arrays工具类、Math类(1)

    一.Scanner类 1.api简介: 应用程序编程接口 2.Scanner类: 作用:获取键盘输入的数据 位置: java.util.Scanner. 使用:使用成员方法nextInt() 和 ne ...

  5. 什么是静态代码块?java中如何使用空参构造方法自动生成不同名字的对象,使用非静态的属性和静态属性有什么区别,原因是什么?如何理解static关键字

    静态代码块?类加载就执行,最先执行 class demo{ static int num; static{ num=10; num*=3; System.out.println("haha& ...

  6. jvm源码解读--09 创建oop对象,将static静态变量放置在oop的96 offset处 第二篇

    先打断点systemDictionary.cpp 1915行 Universe::fixup_mirrors(CHECK); 进入 void Universe::fixup_mirrors(TRAPS ...

  7. jvm源码解读--08 创建oop对象,将static静态变量放置在oop的96 offset处

    之前分析的已经加载的.Class文件中都没有Static 静态变量,所以也就没这部分的解析,自己也是不懂hotspot 将静态变量放哪里去了,追踪源码之后,看清楚了整个套路,总体上来说,可以举例来说对 ...

  8. android 尽量不要使用static静态变量

    使用静态static静态变量潜在性问题: 1.占用内存,并且内存一般不会释放: 2.在系统不够内存情况下会自动回收静态内存,这样就会引起访问全局静态错误. 3.不能将activity作为static静 ...

  9. Javase部分回顾(static (静态修饰符),修饰方法,单利的设计模式, 封装)

    static (静态修饰符)        1.修饰成员变量        静态变量的访问方式:            方式一 : 通过对象访问.                对象.变量名      ...

随机推荐

  1. strnclmp和strlen函数的用法

    一.strncmp 函数 函数原型: 1.函数原型:int strncmp (const char *s1, const char *s2, size_t  n) 2.头文件: <string. ...

  2. Ubuntu 下启动/停止/重启mysql服务

    1:sudo start mysql 2:sudo stop mysql 3:sudo restart mysql

  3. Javascript Promise 学习 (中)

    时隔多日,对promise有了多一点点的了解. 最近用angularjs 做开发,所以研究了一下它的 $q 功能不算很强大,算是简化版的 Q.js 参考了一下源码,不过我的等级还差很多... 作为学习 ...

  4. uva 10032 Problem F: Tug of War

    http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...

  5. ural 1020 Rope

    #include <cstdio> #include <cstring> #include <cmath> #include <algorithm> # ...

  6. 可以供MFC调用的,QT实现的DLL(使用qt-solutions的qtwinmigrate实现)

    MFC和QT的消息循环机制不同,所以,要让QT写的DLL可以供MFC调用,要做一点特殊的处理 #include <qmfcapp.h> #include <qwinwidget.h& ...

  7. ACM2039_三角形三边关系

    #include <iostream> using namespace std; int main(int argc, char* argv[]) { double a,b,c; int ...

  8. Acdream1157---Segments (CDQ分治)

    陈丹琦分治~~~其实一些数据小的时候可以用二维或者多维树状数组做的,而数据大的时候就无力的题目,都可以用陈丹琦分治解决. 题目:由3钟类型操作:1)D L R(1 <= L <= R &l ...

  9. SRM 601 DIV1

    A 枚举x , 然后对于确定的x , 最后总的apple数对应了唯一的orange数,因此问题转化为求apple的取值范围; apple的取值范围: max为每个bag取最多的apple , min为 ...

  10. Java 8 默认方法和多继承深入解析

    以前经常谈论的Java对比c++的一个优势是Java中没有多继承的问题. 因为Java中子类只能继承(extends)单个父类, 尽管可以实现(implements)多个接口,但是接口中只有抽象方法, ...