init函数
执行顺序
每个包中都有可以有init函数,它闪的执行顺序与包的依赖关系有关。
比如:main函数中导入了A包和B包,而A包也导入到了B包,则执行顺序为 B.init() -> A.init() -> main()
特点
init函数只会执行一次,且在main函数之前执行
如果某个包没有被导入,则该包的init函数不会被执行
匿名导入
疑问:既然某个包要初始化,那么该包一定会被调用,那么直接在调用该包的文件中导入该包好了,为什么还要在某个没有引用该包的文件中匿名导入该包?
最佳实践
一个包中最好最多只有一个init函数
除了框架的习惯用法外,最好不要使用匿名导入
Last updated
Was this helpful?