Мне интересно, почему я должен писать "приват" от SUPER NEW

Я просто изучаю Kotlin о модели MVP. после того, как я сделал класс MainPresenter, я подключился к интерфейсу, mainContract и я столкнулся с проблемой. Я исправил это, но я не могу объяснить это сам, поэтому можете ли вы объяснить, почему я должен добавить «частное»?

MainPresenter

class mainPresenter : mainContract.Presenter {

private lateinit var mainModel: mainModel

private lateinit var view: mainContract.View
// here's private is that i ask u

override fun setView(view: mainContract.View) {
}

override fun setModel(model: mainModel) {
}

override fun onConfirm() {
}
}

//here is interface

interface mainContract {
interface Presenter {
    fun setView(view: mainContract.View)
    fun setModel(model: mainModel)
    fun onConfirm()

}

interface View {
    fun showButtonText(text: String)
}

}
1
0
53
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

На это ответили здесь: https://javarevisited.blogspot.com/2012/03/private-in-java-why-should-you-always.html

Или даже здесь: https://softwareengineering.stackexchange.com/questions/143736/почему-мы-нам-нужны-частные-переменные

Короткий ответ: "не ваше дело, как работает этот класс, вот что вам нужно знать". Если вы пишете одно приложение, нет никакого реального вреда в том, чтобы сделать все общедоступным. Однако, если вы пишете библиотеку, вы можете сохранить те же функции, ориентированные на пользователя, и изменить функции, не ориентированные на пользователя, - внутренний API.

не потому ли, что у него интерфейс внутри интерфейса...? просто интересно, лол

a_local_nobody 14.07.2019 10:36

Другие вопросы по теме