问题
In my recent posts about using or omitting a "new" keyword in Scala ( "new" keyword in Scala) I was told that the omission comes from the fact that certain classes have companion objects defined with apply method on them. My question is: are we able to tell or is there any general rule to distinguish which classes/objects have a companion object and apply method?
Thanks in advance and sorry of it's a stupid question, but coming from a Java background it is a bit confusing.
回答1:
In the Scala API documentation, you see a little icon

Most of the collection classes and many other classes in the standard library have companion objects with apply
methods.
For case classes, the Scala compiler automatically creates a companion object with an apply
method (as well as other methods).
回答2:
In the scala API documentation, you can access the companion object by clicking on the icon


来源:https://stackoverflow.com/questions/9794640/scala-companion-objects-and-new-keyword