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 پاسخ 251 بازدید
0 امتیاز
1 پاسخ 364 بازدید
0 امتیاز
1 پاسخ 377 بازدید
0 امتیاز
1 پاسخ 554 بازدید
+2 امتیاز
1 پاسخ 621 بازدید
+2 امتیاز
1 پاسخ 799 بازدید
+1 امتیاز
1 پاسخ 513 بازدید
سوال شده 4 سال قبل در برنامه نویسی توسط Reza.R (851 امتیاز)
0 امتیاز
1 پاسخ 242 بازدید
سوال شده 4 سال قبل در برنامه نویسی توسط Reza.R (851 امتیاز)
+1 امتیاز
1 پاسخ 321 بازدید
...