Программирование на JAVA
Меню :
Стартовая
Основы программирования
Программирование на JAVA
Программирование на C++
Программирование на Pascal
Задачи по программированию
final long creationTime=System.currentTimeMillis();
Данное поле будет хранить время создания объекта. Существует еше два специальных модификатора - transient и volatile. Они будут рассмотрены в соответствующих лекциях.
После списка модификаторов указывается тип поля. Затем идет перечисление одного или нескольких имен полей с возможными инициализаторами:
int а;
int b=3, c=b+5, d;
Point p, p1=null, p2=new Point();
Повторяющиеся имена полей запрещены. Указанный идентификатор при объявлении становится простым именем поля. Составное имя формируется из имени класса или имени переменной объектного типа, и простого имени поля. Областью видимости поля является все объявление тела класса.
Запрещается использовать поле в инициализации других полей до его объявления.
int у=х; intx=3;
Однако в остальном поля можно объявлять и ниже их использования:
class Point {
int getX() {return x;}
int y=getX(); intx=3;
public static void main (String s[]) { Point p=new Point(); System.out.println(p.x+", "+p.y);
}
}
Результатом будет: 3,0
Данный пример корректен, но для понимания его результата необходимо вспомнить, что все поля класса имеют значение по умолчанию:
• для числовых полей примитивных типов - 0;
• для булевского типа - false;
• для ссылочных — null.
Таким образом, при инициализации переменной у был использован Результат метода getX(), который вернул значение по умолчанию переменной х, то есть 0. Затем переменная х получила значение 3.
Объявление методов
Объявление метода состоит из заголовка и тела метода. Заголовок состоит из:
• модификаторов (доступа в том числе);
• типа возвращаемого значения или ключевого слова void;
• имени метода;
• списка аргументов в круглых скобках (аргументов может не быть);
• специального throws-выражения.
Заголовок начинается с перечисления модификаторов. Для методов доступен любой из трех возможных модификаторов доступа. Также допускается использование доступа по умолчанию.
Кроме того, существует модификатор final, который говорит о том. что такой метод нельзя переопределять в наследниках. Можно считать, что все методы final-класса, а также все private-методы любого класса, являются final.
Также поддерживается модификатор native. Метод, объявленный с таким модификатором, не имеет реализации на Java. Он должен быть написан на другом языке (C/C++, Fortran и т