progs.biz  
Начало>Java>Основы>Урок 11
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
SQL
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

Дэвид Флэнаган Java в примерах. Справочник
Дэвид Флэнаган Java в примерах. Справочник
Заказать на Озоне



Яндекс-цитирования

Введение в Java
Урок 11. Конструкторы классов

Конструкторы предназначены для задания ннекоторых стандартных значений для переменных-членов класса. Конструктор - это тот же метод класса, только обладающий некоторым количеством особенностей. Раз это метод, значит мы должны после его имени писать круглые скобки, в которых мы можем писать или не писать параметры и т. п. Но есть и несколько черт, отличающих конструктор от других методов класса. Вот они:

Конструктор всегда называется так же, как и класс (т. е. если класс, скажем, называется worker, то и контруктор будет называться worker).

Конструктор в отличие от других методов вызывается сам в момент создания экземпляра класса.

Конструктор не возвращает никакого значения. Это значит, что если перед любым другим методом мы пишем тип возвращаемого значения (int, float и т. п.), то перед конструктором ничего писать не надо (void тоже писать не надо).

Приведем пример конструкторов для класса worker:

class worker
{
    private int Age;
    public String Name;
    //Конструктор без параметров
    public worker()
    {
        Age=20;
    }
    //Конструктор с параметрами
    public worker(int newAge, String newName)
    {
        Age=newAge;
        Name=newName;
    }
    ...
}

Посмотреть на действия конструкторов в тестовом классе можно так:

        ...
        worker wrk1=new worker();
        worker wrk2=new worker(40, "Petrov");
        System.out.println(wrk1.getAge() + "\n" + wrk1.Name);
        System.out.println(wrk2.getAge() + "\n" + wrk2.Name);
        ...

Для первого работника вызовется конструктор без параметров и его возраст установится в 20, для второго - конструктор с параметрами, и его возраст станет равным 40, а имя - Petrov

Если вы не заведете в классе конструктора, то компилятор java создаст его сам. Это, кстати, видно в примере урока 9:

worker wrk=new worker();

Здесь worker() - это как раз вызов конструктора без параметров. Создаваемый по умолчанию конструктор ничего не делает.

Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2008 сайт progs.biz
© 2002-2008 Игорь Алексеев