public function __construct($config = []) // base\application.php文件中的方法
{
Yii::$app = $this; //yii::$app 就代表web/application对象
static::setInstance($this); // 把web/application对象注册到loadedModules中, 这个目的是什么还不清楚
$this->state = self::STATE_BEGIN; //设置当前状态
$this->preInit($config); // 预初始化, 设置了basePath,vendorPath,runtimePath,时区,container(di)可选,判断config里是否有核心组件,没有就注册进去
$this->registerErrorHandler($config); // 错误处理器的初始化或者说注册,反正必须要有错误处理器,否则终止程序。(当应用程序出现错误时用的,对错误进行捕获,抛出错误页面之类的,大概这样)
Component::__construct($config); // 给对象配置属性值(属性键值对是config传过去的),对象就是web/application吧?。(PHP的对象是可以动态设置属性的!)init()方法设置控制器的命名空间
}