Главная » Java » Как долго живут переменные?

0

Внутри  метода convertGrades()  класса  ReportCard  объявляется переменная  grade.  Переменная, объявленная внутри любого метода называется локальной. Это означает, что она существует и доступна только внутри  этого  метода.  После  того,  как метод  выполнился, локальная переменная автоматически удаляется из памяти. Программисты так же используют термин область действия (scope) , чтобы  задать   сколько   времени   та   или   иная   переменная   будет существовать.Если переменная должна быть использована несколькими методами, то её нужно объявить вне всех методов. В классе Fish,  currentDepth это  атрибут класса (member variable). Срок  жизни этих переменных определяется   сроком  жизни  объекта  Fish, поэтому  они  еще называются  атрибутами экземпляра класса (instance variables).  Такие переменные могут совместно использоваться всеми методами класса, и, в некоторых случаях, даже быть доступными для других классов. Например,  в  выражении  System.out.println()   используется переменная out,  которая объявлена в классе System.Минуточку! А разве можно использовать атрибут класса System, если мы не создавали экземпляра этого класса?  Да можем, если переменная объявлена с  помощью  ключевого  слова  static (статический). Если объявление  атрибута класса или метода начинается со слова static,  то не  обязательно создавать экземпляр класса, чтобы  их использовать. Статические атрибуты класса  используются  для  хранения  значений общих для всех экземпляров класса.Например, метод convertGrades()  может быть объявлен в классе  ReportCard как статический, потому что в реализации этого метода для чтения   и записи не используются атрибуты,  специфичные для  конкретного  экземпляра класса. Статический метод sqrt() из  класса  Math можно  вызывать вот так:

double squareRoot = Math.sqrt(4.0);

Источник: Java  Programming for Kids, Parents and Grandparents by Yakov Fain

По теме:

  • Комментарии