Описание тега primary-constructor

Первичные конструкторы - это функция, которую вы найдете в нескольких языках программирования, включая F#, Scala и Kotlin. Первичный конструктор позволяет кодировщику определять конструктор для типа и фиксировать параметры конструктора для использования в выражениях инициализации на протяжении всего остального определения типа.
1 ответ

Как проблема с бриллиантами в oops решается с помощью "общей" стратегии?

Проблема с бриллиантом решается в некоторых языках OOPS (например, curl), имея повторно унаследованный класс как "общий"? Я хочу знать, как это работает. Кроме того, я хочу знать роль первичных и вторичных конструкторов в решении проблемы алмазов на…
13 ноя '18 в 20:19
2 ответа

Инициировать свойство с помощью сеттера в основном конструкторе в Kotlin

У меня есть следующий код: class Camera : AsyncActiveInputDevice<Image> { constructor(inputListener: ((Image) -> Unit)? = null) { this.inputListener = inputListener } override var inputListener: ((Image) -> Unit)? set(value) { field = va…
2 ответа

Отойдя от первичных конструкторов

Предварительный просмотр C# 6 для Visual Studio 2013 поддерживал основную функцию конструкторов, которая, как решили специалисты, не войдет в финальную версию. К сожалению, моя команда реализовала более 200 классов с использованием первичных констру…
12 дек '14 в 18:29
1 ответ

Основной конструктор не компилируется в C# 6.0

Я пытаюсь написать простой пример новой функции Primary Constructor в C# 6.0, но не могу его скомпилировать. Я изменил версию языка на C# 6.0, но он все еще не работает. public class Person (string fName, string lName) { public string FName { get; p…
14 июн '16 в 15:18
1 ответ

Котлин первичных и вторичных конструкторов при наследовании

Я изучаю Kotlin, и я немного застрял с конструкторами. Я написал программу, которая поможет мне понять концепцию. Программа выглядит следующим образом: open class Animal(){ var name :String = "noname"; constructor(name:String):this(){ this.name = na…
11 май '18 в 11:10
3 ответа

Почему у Kotlin есть два типа конструкторов?

У Котлина есть два типа конструкторов, первичный и вторичный. Какова цель иметь два типа? На мой взгляд, это делает код более сложным и противоречивым. Если оба типа конструкторов создают объекты класса, они одинаково важны для класса. Между тем, мн…
26 июл '18 в 14:57
2 ответа

Как получить доступ к параметрам первичного конструктора внутри вторичного конструктора kotlin

Я изучаю котлин и читал о конструкторах: первичных и вторичных. Вот мой вопрос: как мне получить доступ к параметрам первичного конструктора внутри вторичного конструктора. Я не могу получить доступ, но не знаю почему? Почему я не могу получить к не…
1 ответ

Как передать данные из переменной в конструктор, используя тело переменной?

Я пытаюсь назначить данные своему классу, используя созданную мной переменную. Я хочу использовать переменную как экземпляр класса членства. Каждый раз, когда я передаю какие-либо значения, я получаю сообщение об ошибке. ошибка: для параметра _numbe…
26 окт '19 в 21:56
0 ответов

Есть ли способ добавить преобразование типов в DocumentSnapshot.toObject()?

Я хочу сделать мое приложение Kotiln менее связанным с моим компонентом Firestore. У меня есть модель, которая раньше выглядела так: data class MyObjectModel( @DocumentId val id: String = "", var title: String = "", var media: List<String> = l…
1 ответ

Kotlin: как использовать пользовательские сеттеры в основном конструкторе

Я не знаю, как сделать так, чтобы при создании объекта значения параметров "проходили через сеттеры" самое близкое, что я получил, это дублировать код, использовать один раз в создании объекта и еще раз в сеттер class User(var name: String, password…
17 янв '22 в 11:42
3 ответа

Котлин. Как объявить константу?

У меня есть класс, который в первичном конструкторе имеет несколько полей: class SomeData(val counter: Int...) { // some logic} Мне нужно создать константу. Я обычно делаю так: companion object { private const val MAX_VALUE = 1000 } Но в моем случае…
0 ответов

Как я могу передать значение основному конструктору фрагмента при переходе от другого фрагмента с помощью NavGraph

class FragmentA: Fragment() { fun changeFragment(activity: Activity, id: Int, b: Bundle) { findNavController( activity, R.id.nav_fragment_b ).navigate( id, b ) } } FragmentB (var name:String): Fragment(){ } В этом я хочу перейти от FragmentA к Frag…
0 ответов

Проверка нуля с помощью основного конструктора в C# 12

Я использую C# 12. В C# 12 я могу использовать основной конструктор: public class UserService(IUnitOfWork uow) : IUserService { } До C# 12 я использовал проверку нуля для элементов, которые я добавлял в конструктор: public class UserService : IUserS…