官术网_书友最值得收藏!

Wildcard imports

If we have a bunch of imports from the same package, then to avoid specifying each import individually, we can import the entire package at once using the * operator.

If we have several imports from the same package, then to avoid listing each import on a single line, all the classes and interfaces from a package can be imported at once. This is done using the * operator. For example, the following package declaration would import every class and interface from the com.packt.myproject package:

    import com.packt.myproject.* 

Wildcard imports are especially useful when a large number of helper functions or constants are defined at the top level, and we wish to refer to those without using the name of the package that contains those functions. In the following example, two constants will be defined in one package:

    package com.packt.myproject.constants 
    // define the two constants
    val PI = 3.142 
    val E = 2.178 

To avoid referencing these constants by their FQN, we will import them in the next example:

 package com.packt.myproject
//import the two constants defined import com.packt.myproject.constants.* //sum the two constants fun add() = E + PI

Notice how the add() function does not need to refer to E and PI using the FQN, but can simply use them as if they were in scope. The wildcard import removes the repetition that would, otherwise, be needed when importing numerous constants.

主站蜘蛛池模板: 北海市| 方城县| 邳州市| 云安县| 楚雄市| 简阳市| 大足县| 确山县| 沐川县| 清水县| 白水县| 崇左市| 竹溪县| 闽清县| 阿拉善盟| 北流市| 井陉县| 西乡县| 开化县| 长宁县| 安国市| 潜江市| 恭城| 东至县| 兰坪| 海宁市| 贵港市| 宽城| 天台县| 井冈山市| 金寨县| 绿春县| 钟山县| 嘉定区| 海丰县| 全椒县| 墨竹工卡县| 陆良县| 交城县| 剑川县| 尼木县|