Scala之旅(4)——基础概要(类,抽象,继承,特质)

scala学习,建议应该具有一定的java基础,这样更容易上手。

类的定义和java无差异。

构造函数(构造方法)

如果我们要定义一个构造函数,可以如下定义:



继承

继承在scala中用extends关键字,方法的重载用override关键字。



抽象类

定义了没有实现的方法,必须由子类实现。抽象类无法创建实例。


特质(Trait)

特质相当于java中的接口interface,但比interface功能更强大,trait中可以定义已实现的方法(当然java8现在也支持了)。

多个特质扩展用with关键字。


特质和抽象类的使用场景

抽象类只可以继承一个,特质可以扩展多个,所以,优先使用特质。

当构造函数需要参数的时候,只能使用抽象类,因为特质是无法指定构造函数的参数的。如下是错误的:


泛型

Scala中使用泛型使用方括号[]。


在方法上使用泛型:


猜你喜欢

转载自blog.csdn.net/stefan_xiepj/article/details/80267094