Я только начал экспериментировать с Android-приложением, используя Kotlin. Я просто хотел, чтобы наследовать Application класс вроде этого:Этот тип имеет конструктор и должен быть инициализирован здесь - Kotlin
class SomeApp : Application {
}
Но компилятор поднимает предупреждение:
и внушение изменяет его:
class SomeApp : Application() {
override fun onCreate() {
super.onCreate()
}
}
Я читал о primary and secondary constructors in the docs , Итак, если у суперкласса есть первичный конструктор, то нужно ли здесь писать? как класс приложения имеет свой собственный конструктор
public Application() {
super(null);
}
тогда необходимо было бы иметь первичный конструктор для производного? или Я не могу сделать что-то вроде Java-способа:
class SomeApp : Application {
constructor SomeApp(){
super();
}
}
или эта ошибка предполагает что-то еще? Может ли кто-нибудь объяснить мне подробно? Я очень новичок в этом языке, и это выглядит странно для меня.
Edit: В Java я могу сделать следующее: class SomeApp extends Application{ }
Это неявный конструктор, так что я не должен писать: class SomeApp extends Application{ public Application(){ super(); } }
Но в Котлин я должен определить пустой конструктор, как следующее: class SomeApp:Application(){ }
?
любое объяснение этой ошибки? –
Что вы имеете в виду? Это все, что нужно для этого – voddan
@KrupalShah Я отредактировал ответ. Это то, о чем вы спрашивали? – voddan