1、将trait作为接口使用:在scala中可以定义抽象的方法,在这里插入代码片
只要不给出方法的具体实现即可。类可以继承接口,在scala中没有实现(implement)的概念,无论是继承类还是接口,都是使用extends。类继承trait后,必须实现其中的抽象方法,实现时不需要使用override关键字。
2、在Trait中定义具体方法:scala中接口trait不是只可以定义抽象方法,还可以定义具体方法,就是trait的功能混入了类。
3、在Trait中定义具体字段:Scala中的Triat可以定义具体field,此时继承trait的类就自动获得了trait中定义的field,但是这种获取field的方式与继承class是不同的:如果是继承class获取的field,实际是定义在父类中的;而继承trait获取的field,就直接被添加到了类中。
4、在Trait中定义抽象字段:Scala中的Triat可以定义抽象field,而trait中的具体方法则可以基于抽象field来编写,但是继承trait的类,则必须覆盖抽象field,提供具体的值。
5、为实例混入trait:有时我们可以在创建类的对象时,指定该对象混入某个trait,这样,就只有这个对象混入该trait的方法,而类的其他对象则没有。
scala编程07-接口1
最新推荐文章于 2023-01-26 11:06:57 发布