Главная » Java » Методы класса Java

0

 

Методы класса, как правило, содержат код, который способен адекватно воспринимать состояние объекта и изменять его. В некоторых классах предлагаются поля, помеченные модификатором publiс или protected, Т.е. открытые ля непосредственного обращения из стороннего программного кода, но в большинстве случаев подобный подход нельзя признать наилучшим или даже приемлемым (обратитесь к разделу 3.11 на странице 117). Большинство объектов Предназначено для получения решений, которые нельзя свести к простым элементам данных. Ниже рассмотрен текст еще одного метода main, предусматривающего создание объекта класса Body и вывод на экран содержимого его полей:

class Bodyprint {

 

public static void main(String[] args) {

Body sun = new Воdу("солнце", null);

Body earth = new Воdу("земля", sun);

Sуstеm.оut.ргiпtlп("тело " + earth.name +

" вращается вокруг тела .. + earth.orbits.name +

 

" и обладает номером " + earth . i dNum) ;

}

}

 

 

Конструкция объявления метода состоит из двух частей: заголовка метода и его тела. Заголовок в общем случае включает набор модификаторов, наименование типа возвращаемого значения, сигнатуру и предложение throws, перечисляющее классы исключений, которые могут генерироваться методом. Сигнатура метода состоит из наименования-идентификатора метода и списка (возможно, пустого) типов параметров, заключенного в круглые скобки. В объявлении любого метода должны быть указаны, по меньшей мере, тип возвращаемого значения и сигнатура – модификаторы и Список throws, вообще говоря, не обязательны. Более подробные сведения об Исключениях и предложении throws приведены в главе 8. Тело метода представляет собой набор выражений, ограниченный фигурными скобками.

В объявлении метода применяются модификаторы указанных ниже категорий.

·      Модификаторы доступа - подробно рассмотрены в разделе 2.3 этой главы на странице 63.

 

·      abstract. Модификатором abstract помечаются методы, которые точно не определены в контексте текущего класса. В объявлении методов abstract отсутствует тело – оно заменяется символом точки с запятой. Предполагается, что абстрактные методы должны быть реализованы в не котором производном классе. За деталями обращайтесь к разделу 3.7 на странице 107.

 

·      static. Вопросы применения модификатора statiс в объявлениях методов обсуждаются ниже .

 

·      fiпal. Методы, которые обозначены как final, не допускают переопределения в производных классах. Более подробная информация по этой теме приведена в разделе 3.6 на странице 105.

 

·      synchronized. Метод, помеченный как synchronized, обладает дополнительной семантикой, касающейся проблемы управления вычислительными потоками, одновременно выполняющимися в контексте программного приложения. Соответствующие сведения вы найдете в разделе 10.3 на странице 250.

 

·      native. Методы native кратко рассмотрены в разделе 2.10 этой главы на странице 84.

 

·      strict floating point. Метод, объявленный как stгictfp , гарантирует, что все предусмотренные им операции с плавающей запятой будут выполняться точно и единообразно всеми виртуальными машинами Java. Признак stгictfp, содержащийся в объявлении класса, неявно распространяется на все методы класса, манипулирующие числами с плавающей запятой. Более подробные сведения приведены в разделе 6.6.3 на странице 175.

 

Метод abstract не может быть одновременно помечен любым из модификаторов – static, final, synchronized, native или strictfp.

 

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

 

Источник: Арнолд, Кен, Гослинг, Джеймс, Холмс, Дэвид. Язык программирования Java. 3-е изд .. : Пер. с англ. – М. : Издательский дом «Вильяме», 2001. – 624 с. : ил. – Парал. тит. англ.

По теме:

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