<?php
/*由static定义的属性和方法称为静态成员和静态方法。static定义的属性和方法是属于类的,在对象之间共享。*/
/*比如能够通过定义一个静态变量来统计类实例化了多少个对象*/
class test{
static $count;
function __construct() // 定义一个构造函数
{
self::$count++;
}
static function getCount(){ //定义一个静态方法,返回静态变量$count的值
return self::$count;
}
}
test::$count=0; //初始化静态变量$count的值为0
$test_01=new test();
$test_02=new test();
$test_03=new test();
$sum=test::getCount();
echo $sum;
//结果3
/*
在类外和类内能够通过
类名::静态成员; //訪问静态成员
类名::静态方法; //訪问静态方法
在类内静态方法能够通过
self::静态成员; //訪问静态成员
self::静态方法; //訪问静态方法
注意:在静态方法中仅仅能訪问静态成员
*/
?>
相关文章
- C#基础总结之八面向对象知识点总结-继承与多态-接口
- 牛客网Java刷题知识点之什么是内部类、为什么要使用内部类、内部类如何使用外部类的属性和方法、成员内部类、局部内部类、静态内部类、匿名内部类
- 已看1.熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的Java API,包括集合框架、多线程(并发编程)、I/O(NIO)、Socket、JDBC、XML、反射等。[泛型]\
- 设计模式学习--面向对象的5条设计原则之单一职责原则--SRP
- Java学习笔记十八:Java面向对象的三大特性之封装
- java基础篇(一) ----- java面向对象的三大特性之封装
- 面向对象的三大特征:封装性、继承性、多态性之继承
- 黑马程序员-Java基础知识预备之Java面向对象的理解(part2)
- 黑马程序员 java 基础 毕向东 面向对象 异常 以及 package 的使用
- Python面向对象---类的基本使用