首页 > 代码库 > final关键字,类的自动加载,命名空间
final关键字,类的自动加载,命名空间
final关键字
1.final可以修饰方法和类,但是不能修饰属性;
2.Final修饰的类不能被继承;
3.Fina修饰的方法不能被重写,子类可以对已被final修饰的父类进行访问,但是不能对父类的方法进行重写。
扩展内容:
类的自动加载:
什么是类的自动加载?
Spl_autoload_register():注册给定的函数作为__autoload()函数的实现
类的自动加载
在最开始使用的是__autoload()进行自动加载,但是在PHP5.3之前,__autoload函数抛出的异常不能被catch语句块捕获并会导致一个致命的错误,出现spl_autoload_register(),__autoload()无法进行修正,如果一旦修正,就会涉及源代码。对于__autoload()官方只是不推荐使用,但是不代表不使用,在平时的某些练习时使用__autoload()也是很方便的。
命名空间:
什么是命名空间:从广义上来说,命名空间是一种封装事物的方法。
简单来说其实
关键字:namespace
在一个页面可以定义多个命名空间,但是尽量在一个页面使用一个命名空间
namespace必须声明在所有代码的最前面。
__NAMESPACE__:魔术常量,当前定义的命名空间,如果没有声明命名空间的话,默认返回一个空的字符串。
几个魔术常量:
__LINE__:返回当前的行数
__FILE__:当前正在执行的文件的绝对路径
__DIR__:当前正在执行的文件夹的路径(绝对路径)
__FUNCTION__:
在命名空间中起别名:
Use:
使用use可以指定加载的命名空间及其对应的类,同时在类名后面可以使用as关键字指定某个类的别名,一旦起了别名后吗,在当前文件中就可以使用这个别名来创建对应的类的对象
起别名的目的是为了简化。
final关键字,类的自动加载,命名空间