一天学完spark的Scala基础语法教程十、类和对象(idea版本)
📋前言📋
💝博客主页:红目香薰_CSDN博客-大数据,计算机理论,MySQL领域博主💝
✍本文由在下【红目香薰】原创,首发于CSDN✍
🤗2022年最大愿望:【服务百万技术人次】🤗
💝初始环境地址:【spark环境搭建(idea版本)_红目香薰-CSDN博客】💝
环境需求
环境:win10
开发工具:IntelliJ IDEA 2021.2
maven版本:3.6.3
创建测试类【day1/demo10.scalc】,类型为【Object】
Scala 类和对象
类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。
示例
package day1
object demo10 {
def main(args: Array[String]): Unit = {
var de=new demo10_class();//通过new创建对象
println(de.toMax(5,6))
}
}
class demo10_class{
def toMax(x:Int,y:Int):Int={
if(x>y){
return x;
}
return y;
}
}
【class】类关键字
class关键字修饰的是类,只有通过class修饰的类才能被【new】创建,这里就不能再次创建【object】类型了,可以自行测试,会报错的。
new,在内存中创建出一个地址,存储了这个类的信息。
var de=new demo10_class();//通过new创建对象
对象
对象就是一个特指,这个对象有其自身的【属性】以及【方法】。
例如:单独说公交车,它是一个类,但是你要说,石家庄车牌为冀A *****的1路公交车,那么它就是对象,有具体的针对性。
Scala 继承
Scala继承一个基类跟Java很相似, 但我们需要注意以下几点:
- 1、重写一个非抽象方法必须使用override修饰符。
- 2、只有主构造函数才可以往基类的构造函数里写参数。
- 3、在子类中重写超类的抽象方法时,你不需要使用override关键字。
接下来让我们来看个实例:
package day1
object demo10 extends demo10_class {
def main(args: Array[String]): Unit = {
//由于继承了【demo10_class】类,故而可以直接使用
println(toMax(51,6))
}
}
class demo10_class{
def toMax(x:Int,y:Int):Int={
if(x>y){
return x;
}
return y;
}
}
重写
这里我就留了一个简单的实例重写,继承了父类,所以可以直接用super
package day1
object demo10 extends demo10_class {
//重写
override def toMax(x: Int, y: Int): Int = super.toMax(x, y)
def main(args: Array[String]): Unit = {
//由于继承了【demo10_class】类,故而可以直接使用
println(toMax(51,66))
}
}
class demo10_class{
def toMax(x:Int,y:Int):Int={
if(x>y){
return x;
}
return y;
}
}
功能依然都是正常可用的。
总结
到这里有关一天学完spark的Scala基础语法教程十、类和对象(idea版本)就结束了
希望能对大家有所帮助。
欢迎一键三连,谢谢。
文章来源: laoshifu.blog.csdn.net,作者:红目香薰,版权归原作者所有,如需转载,请联系作者。
原文链接:laoshifu.blog.csdn.net/article/details/122716083
- 点赞
- 收藏
- 关注作者
评论(0)