Spark错误:class needs to be abstract, since: it has n unimplemented members

2024-05-14 15:18

本文主要是介绍Spark错误:class needs to be abstract, since: it has n unimplemented members,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一般情况下在Spark项目里面只会写一些数据处理的job,但是偶尔也会有一些特别的需求,这里需要定义一个商品(Sku)的类,写惯了Java的代码,写个bean应该也不难。

class SkuInfo {var skuCode: Stringvar skuName: Stringdef _skuCode(skuCode_ : String): Unit = {skuCode = skuCode_}def _skuName(skuName_ : String): Unit = {skuName = skuName_}
}

但是一直在报错,错误

Error:(11, 7) class SkuInfo needs to be abstract, since:
it has 5 unimplemented members.
/** As seen from class SkuInfo, the missing signatures are as follows.*  For convenience, these are usable as stub implementations.*/def skuClassName_=(x$1: String): Unit = ???def skuCode_=(x$1: String): Unit = ???def skuDivisionName_=(x$1: String): Unit = ???def skuName_=(x$1: String): Unit = ???def skuSectionName_=(x$1: String): Unit = ???
class SkuInfo {
...

错误原因:
Scala的Class属性里面的变量一定要初始化
如果没有初始化,Scala会认为认为当前类是一个抽象类,所以会报上面的错误。
如果只有一个变量没有初始化,编译器会提示该变量没有初始化。

解决办法:
var skuCode: String = ”“ 或者 var skuCode:String = _
如果是= _的话,Scala会自动填充一个默认值
一般来说,您应该仔细考虑这是否是代码的正确写法; 许多需要在使用前进行初始化的字段是安全的,如果没有任何机制来强制执行初始化,就会出现问题。

参考:
https://stackoverflow.com/questions/18453406/error-class-animal-needs-to-be-abstract-since-it-has-5-unimplemented-members

这篇关于Spark错误:class needs to be abstract, since: it has n unimplemented members的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/989102

相关文章

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

Python中ModuleNotFoundError: No module named ‘timm’的错误解决

《Python中ModuleNotFoundError:Nomodulenamed‘timm’的错误解决》本文主要介绍了Python中ModuleNotFoundError:Nomodulen... 目录一、引言二、错误原因分析三、解决办法1.安装timm模块2. 检查python环境3. 解决安装路径问题

如何解决mysql出现Incorrect string value for column ‘表项‘ at row 1错误问题

《如何解决mysql出现Incorrectstringvalueforcolumn‘表项‘atrow1错误问题》:本文主要介绍如何解决mysql出现Incorrectstringv... 目录mysql出现Incorrect string value for column ‘表项‘ at row 1错误报错

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

前端bug调试的方法技巧及常见错误

《前端bug调试的方法技巧及常见错误》:本文主要介绍编程中常见的报错和Bug,以及调试的重要性,调试的基本流程是通过缩小范围来定位问题,并给出了推测法、删除代码法、console调试和debugg... 目录调试基本流程调试方法排查bug的两大技巧如何看控制台报错前端常见错误取值调用报错资源引入错误解析错误

前端 CSS 动态设置样式::class、:style 等技巧(推荐)

《前端CSS动态设置样式::class、:style等技巧(推荐)》:本文主要介绍了Vue.js中动态绑定类名和内联样式的两种方法:对象语法和数组语法,通过对象语法,可以根据条件动态切换类名或样式;通过数组语法,可以同时绑定多个类名或样式,此外,还可以结合计算属性来生成复杂的类名或样式对象,详细内容请阅读本文,希望能对你有所帮助...

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

SpringBoot中的404错误:原因、影响及解决策略

《SpringBoot中的404错误:原因、影响及解决策略》本文详细介绍了SpringBoot中404错误的出现原因、影响以及处理策略,404错误常见于URL路径错误、控制器配置问题、静态资源配置错误... 目录Spring Boot中的404错误:原因、影响及处理策略404错误的出现原因1. URL路径错