progs.biz  
Начало>Java>Основы>Урок 9
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
Обзор книг
Обзор программ

Ленди М. и др. Borland JBuilder. Руководство разработчика
Ленди М. и др. Borland JBuilder. Руководство разработчика
Заказать на Озоне



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

Введение в Java
Урок 9. Начинаем изучать классы

С классом мы уже столкнулись при написании нашей первой программы на Java в уроке 3. И это не случайно - без классов на Java нельзя обойтись даже в самой простой программе. На этом же занятии и на нескольких следующих мы с вами и будем изучать классы и все, что с ними связано - наследование, конструкторы, виртуальные функции и другие мудреные вещи.

Давайте создадим новую программу. Вот ее текст:

class worker
{
    private int Age;
    public String Name;
    public void setAge(int newAge)
    {
        if(newAge>=0)
            Age=newAge;
        else
            Age=0;    
    }
    public int getAge()
    {
        return Age;
    }
}
class Test{
    public static void main(String [] args){
        worker wrk=new worker();
        wrk.setAge(23);
        wrk.Name="Ivan";
        System.out.println(wrk.getAge() + "\n" + wrk.Name);
    }
}

Сохраните эту программу в файле Test.java и откомпилируйте. При запуске наша программа должны выдать две строчки: 23 и Ivan.

Что мы в нашей программе делаем? Сначала мы определяем класс worker. Делается это с помощью ключевого слова class:

class worker
{
    ...
}

В классе мы определяем две переменные - Age для возраста и Name для имени. Кроме типа переменых (int и String) мы используем еще модификаторы доступа - private (означает, что наша переменная не будет видна снаружи класса) и public (с наружи класса доступ есть). Раз переменную Age мы объявили как private, то пишем два метода в нашем классе: setAge для чтения возраста и getAge - для записи. Эти методы мы объявляем с модификатором public, это значит, что мы сможем их вызывать снаружи класса. Метод getAge просто возвращет наш возраст, а метод setAge делает небольшую проверку, и записывает в Age только положительный возраст или нуль в противном случае. Если вы раньше программировали на C++, то обратите внимание, во-первых, что модификаторы доступа ставятся перед каждой переменной и перед каждым методом и во-вторых, что после заакрывающей фигурной скобки класса точку с запятой ставить не надо.

Класс Test служит для испытания класса worker. В нем мы заводим экземпляр нашего класса:

    ...
    worker wrk=new worker();
    ...

Это мы делаем за два этапа - сначала заводим переменную типа worker (которая является ссылкой на объект), и затем определяем сам объект (с помощью оператора new).

После создания объекта мы можем вызывать его методы, обращаться к открытым переменным и т. п. Это мы и делаем в строчках

        ...
        wrk.setAge(23);
        wrk.Name="Ivan";
        System.out.println(wrk.getAge() + "\n" + wrk.Name);
        ...

С этим уроком все!

Рассылки нашего сайта на 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 Игорь Алексеев