1.使用场景
包一般是为了解决 命名冲突
在不同的包中 可以定义相同名称的类
2.定义
使用package 定义
eg:
新建一个 class 类
package Package1{ class Dog { def abc(): Unit ={ println("this is package's method") } } } package Package2{ class Cat{ def miao(): Unit ={ println("this is miao miao") } } }
在另外Scala文件中 比如其他的Object代码文件 引用这两个包
import Package1.Dog val dog = new Dog() dog.abc() import Package2.Cat val cat = new Cat cat.miao()
输出:
3.包嵌套
一个包中 可以嵌套多个包
eg;
package Animal{ package Canidae{ class Dog { def abc(): Unit ={ println("this is package's method") } } } package Felidae{ class Cat{ def miao(): Unit ={ println("this is miao miao") } } } }
引用:
import Animal.Canidae.Dog val dog = new Dog() dog.abc() import Animal.Felidae.Cat val cat = new Cat cat.miao()
输出: