what is the difference between scala object and scala class?
Object is a class but it already has(is) an instance, so you can not call new ObjectName . On the other hand, Class is just type and it can be an instance by calling new ClassName() . In scala, there is no static concept. So scala creates a singleton object to provide entry point for your program execution.