scala - How to auto generate object when the class get no params -


so have simple class named person, class have several fields:

class person {  val name:string val abe:int    def generaterandom(): person {       // here want generate person , return   } } 

so can see want class have option generate random person don't want pass params class, want auto. how can create new person object inside generaterandom method , return both name , age fields ? suggestions how implement ?

you use val name , age, there's no other way - have set in constructor. can make constructor private , move generator method companion object (because can access private constructor). code this:

class person private (val name: string, val age: int)  object person {   def generaterandom(): person = {     val randomname = ...     val randomage = ...     new person(randomname, randomage)   } }  //new person("asdas", 3) not possible  val person = person.generaterandom() println(person.name, person.age) 

Comments