Warning: preg_grep(): Compilation failed: quantifier does not follow a repeatable item at offset 213 in /var/www/tg-me/post.php on line 75
Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck | Telegram Webview: mobileproglib/5852 -
Telegram Group & Telegram Channel
🌐 Отложенная инициализация свойств

Отложенная инициализация свойств — это механизм, который позволяет отложить инициализацию переменных до момента их первого использования.

Этот вариант позволяет экономить ресурсы, т.к. избегает необходимости создания объектов при инициализации класса.

➡️ lateinit

Модификатор lateinit говорит о том, что данная переменная будет инициализирована позже. При этом инициализировать свойство можно из любого места, откуда она видна.

Правила использования модификатора lateinit:

🔵 lateinit может использоваться только с var свойствами класса;

🔵 lateinit может быть применен только к свойствам, объявленным внутри тела класса (но не в основном конструкторе), а также к переменным на верхнем уровне и локальным переменным;

🔵 lateinit свойства могут иметь любой тип, кроме примитивных типов (таких как Int, Long, Double и т.д.);

🔵 lateinit свойства не могут быть nullable (т.е. обязательно должно быть объявлены без знака вопроса);

🔵 lateinit свойства не могут быть проинициализированы сразу при их объявлении;

🔵 lateinit свойства должны быть инициализированы до первого обращения к ним, иначе будет выброшено исключение UninitializedPropertyAccessException;

🔵 Нельзя использовать lateinit для переменных, определенных внутри локальных областей видимости (например, внутри функций);

🔵 При использовании модификатора lateinit у свойства не должно быть пользовательских геттеров и сеттеров.

Для проверки факта инициализации переменной вызывайте метод isInitialized(). Функцию следует использовать экономно — не следует добавлять эту проверку к каждой переменной с отложенной инициализацией. Если вы используете isInitialized() слишком часто, то скорее всего вам лучше использовать тип с поддержкой null.

lateinit var catName: String

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

setContentView(R.layout.activity_main)

catName = "Barsik"

if (::catName.isInitialized) {
Log.d("Kot", "Hi, $catName")
}
}


А вы используете lateinit в своих проектах? 💬

🐸 Библиотека мобильного разработчика

#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/mobileproglib/5852
Create:
Last Update:

🌐 Отложенная инициализация свойств

Отложенная инициализация свойств — это механизм, который позволяет отложить инициализацию переменных до момента их первого использования.

Этот вариант позволяет экономить ресурсы, т.к. избегает необходимости создания объектов при инициализации класса.

➡️ lateinit

Модификатор lateinit говорит о том, что данная переменная будет инициализирована позже. При этом инициализировать свойство можно из любого места, откуда она видна.

Правила использования модификатора lateinit:

🔵 lateinit может использоваться только с var свойствами класса;

🔵 lateinit может быть применен только к свойствам, объявленным внутри тела класса (но не в основном конструкторе), а также к переменным на верхнем уровне и локальным переменным;

🔵 lateinit свойства могут иметь любой тип, кроме примитивных типов (таких как Int, Long, Double и т.д.);

🔵 lateinit свойства не могут быть nullable (т.е. обязательно должно быть объявлены без знака вопроса);

🔵 lateinit свойства не могут быть проинициализированы сразу при их объявлении;

🔵 lateinit свойства должны быть инициализированы до первого обращения к ним, иначе будет выброшено исключение UninitializedPropertyAccessException;

🔵 Нельзя использовать lateinit для переменных, определенных внутри локальных областей видимости (например, внутри функций);

🔵 При использовании модификатора lateinit у свойства не должно быть пользовательских геттеров и сеттеров.

Для проверки факта инициализации переменной вызывайте метод isInitialized(). Функцию следует использовать экономно — не следует добавлять эту проверку к каждой переменной с отложенной инициализацией. Если вы используете isInitialized() слишком часто, то скорее всего вам лучше использовать тип с поддержкой null.

lateinit var catName: String

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

setContentView(R.layout.activity_main)

catName = "Barsik"

if (::catName.isInitialized) {
Log.d("Kot", "Hi, $catName")
}
}


А вы используете lateinit в своих проектах? 💬

🐸 Библиотека мобильного разработчика

#междусобойчик

BY Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck




Share with your friend now:
tg-me.com/mobileproglib/5852

View MORE
Open in Telegram


Библиотека мобильного разработчика | Android iOS Swift Retrofit Moshi Chuck Telegram | DID YOU KNOW?

Date: |

Tata Power whose core business is to generate, transmit and distribute electricity has made no money to investors in the last one decade. That is a big blunder considering it is one of the largest power generation companies in the country. One of the reasons is the company's huge debt levels which stood at ₹43,559 crore at the end of March 2021 compared to the company’s market capitalisation of ₹44,447 crore.

Should You Buy Bitcoin?

In general, many financial experts support their clients’ desire to buy cryptocurrency, but they don’t recommend it unless clients express interest. “The biggest concern for us is if someone wants to invest in crypto and the investment they choose doesn’t do well, and then all of a sudden they can’t send their kids to college,” says Ian Harvey, a certified financial planner (CFP) in New York City. “Then it wasn’t worth the risk.” The speculative nature of cryptocurrency leads some planners to recommend it for clients’ “side” investments. “Some call it a Vegas account,” says Scott Hammel, a CFP in Dallas. “Let’s keep this away from our real long-term perspective, make sure it doesn’t become too large a portion of your portfolio.” In a very real sense, Bitcoin is like a single stock, and advisors wouldn’t recommend putting a sizable part of your portfolio into any one company. At most, planners suggest putting no more than 1% to 10% into Bitcoin if you’re passionate about it. “If it was one stock, you would never allocate any significant portion of your portfolio to it,” Hammel says.

Библиотека мобильного разработчика | Android iOS Swift Retrofit Moshi Chuck from us


Telegram Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck
FROM USA