Skip to content

Instantly share code, notes, and snippets.

@yasukotelin
Last active June 19, 2020 04:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save yasukotelin/15bcdb9e809c67cdc448d5fa7da617ac to your computer and use it in GitHub Desktop.
Save yasukotelin/15bcdb9e809c67cdc448d5fa7da617ac to your computer and use it in GitHub Desktop.
Interfaceの名前被りは気をつけよう
class SampleFragment : BookSelectDialogListener, PurchaseDialogListener {
override fun onClick() {
// Compile error.
super.onClick()
}
}
interface BookSelectDialogListener {
fun onClick() {
println("BookSelectDialogListener on clicked!")
}
}
interface PurchaseDialogListener {
fun onClick() {
println("PurchaseDialogListener on clicked!")
}
}
class SampleFragment : BookSelectDialogListener, PurchaseDialogListener {
override fun onClick() {
super<BookSelectDialogListener>.onClick()
super<PurchaseDialogListener>.onClick()
}
}
interface BookSelectDialogListener {
fun onClick() {
println("BookSelectDialogListener on clicked!")
}
}
interface PurchaseDialogListener {
fun onClick() {
println("PurchaseDialogListener on clicked!")
}
}
class SampleFragment : BookSelectDialogListener, PurchaseDialogListener {
override fun onClickBook() {
}
override fun onClickPurchase() {
}
}
interface BookSelectDialogListener {
// 書影が選択されたときのコールバック
fun onClickBook()
}
interface PurchaseDialogInterfaceListener {
// 購入が選択されたときのコールバック
fun onClickPurchase()
}
class SampleFragment : BookSelectDialogListener, PurchaseDialogListener {
override fun onClick() {
// Bookなの?購入なの?
}
}
interface BookSelectDialogListener {
// 書影が選択されたときのコールバック
fun onClick()
}
interface PurchaseDialogListener {
// 購入が選択されたときのコールバック
fun onClick()
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment