РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
110 of 723 menu

Геттер get

Геттер get - это специальный метод класса, который позволяет получать значение свойства без явного вызова метода. Геттер объявляется с помощью ключевого слова get перед именем свойства. Обращение к геттеру происходит так же, как к обычному полю класса - без круглых скобок. Внутри геттера можно выполнять любые вычисления и возвращать результат с помощью return.

Синтаксис

returnType get name { // body }

Пример

Давайте создадим класс Rectangle с приватными полями _width и _height, а также геттер area, который вычисляет площадь:

class Rectangle { double _width; double _height; Rectangle(this._width, this._height); double get area { return _width * _height; } } void main() { Rectangle rect = Rectangle(3, 4); print(rect.area); }

Результат выполнения кода:

12.0

Пример

Давайте создадим класс User с полями firstName и lastName, а также геттер fullName, который возвращает полное имя:

class User { String firstName; String lastName; User(this.firstName, this.lastName); String get fullName { return '$firstName $lastName'; } } void main() { User user = User('John', 'Doe'); print(user.fullName); }

Результат выполнения кода:

"John Doe"

Пример

Геттер может содержать любую логику, например проверку условия. Давайте создадим класс Counter с приватным полем _count и геттером isPositive:

class Counter { int _count; Counter(this._count); bool get isPositive { return _count > 0; } } void main() { Counter counter = Counter(5); print(counter.isPositive); }

Результат выполнения кода:

true

Пример

Геттер может использоваться внутри класса другими методами. Давайте создадим класс Circle с геттером area и методом describe, который выводит площадь:

class Circle { double _radius; Circle(this._radius); double get area { return 3.14 * _radius * _radius; } void describe() { print('Area: $area'); } } void main() { Circle circle = Circle(2); circle.describe(); }

Результат выполнения кода:

"Area: 12.56"

Смотрите также

  • ключевое слово set,
    которое создает сеттер для записи свойства
  • ключевое слово static,
    которое создает статические члены класса
  • ключевое слово this,
    которое ссылается на текущий экземпляр класса
  • ключевое слово decl,
    которое объявляет класс
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить