0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

متد apply در زبان برنامه نویسی Scala چه کاربردی دارد؟ اینکه یک کلاس متد apply داشته باشد چه سودی دارد؟

1 پاسخ

0 امتیاز
قبل توسط (1.1هزار امتیاز)

متد apply می تواند برای یک کلاس و companion object آن کلاس تعریف شود و یک روش برای کوتاه سازی ایجاد یک شئ (factory pattern) از آن کلاس و همچنین دسترسی به عناصر درون اشیاء آن کلاس است و کامپایلر اسکالا در صورتی که به این سینتکس های کوتاه شده برسد آنها را با متد های apply جایگزین می کند:

object Main extends App{
  val saeedGoal = Goal("t1") // call apply method in companion object

  println("saeed goal is = "+saeedGoal()) // call apply method in class
}

class Goal(goal: String){
  private var goalTitle = goal;

  def apply() = goalTitle
}

object Goal{
  def apply(goal: String)= new Goal(goal)
}

سوالات مشابه

0 امتیاز
0 پاسخ 246 بازدید
0 امتیاز
1 پاسخ 358 بازدید
0 امتیاز
1 پاسخ 374 بازدید
0 امتیاز
1 پاسخ 543 بازدید
+2 امتیاز
1 پاسخ 610 بازدید
+2 امتیاز
1 پاسخ 789 بازدید
+1 امتیاز
1 پاسخ 506 بازدید
سوال شده 4 سال قبل در برنامه نویسی توسط Reza.R (851 امتیاز)
0 امتیاز
1 پاسخ 239 بازدید
سوال شده 4 سال قبل در برنامه نویسی توسط Reza.R (851 امتیاز)
+1 امتیاز
1 پاسخ 316 بازدید
...