Spec-Zone .ru
спецификации, руководства, описания, API
След: Изучение Языка Java
Урок: Понятия Объектно-ориентированного программирования
Каков Класс?
Домашняя страница > Изучение Языка Java > Понятия Объектно-ориентированного программирования

Каков Класс?

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

Следующий Bicycle class является одной возможной реализацией велосипеда:


class Bicycle {

    int cadence = 0;
    int speed = 0;
    int gear = 1;

    void changeCadence(int newValue) {
         cadence = newValue;
    }

    void changeGear(int newValue) {
         gear = newValue;
    }

    void speedUp(int increment) {
         speed = speed + increment;   
    }

    void applyBrakes(int decrement) {
         speed = speed - decrement;
    }

    void printStates() {
         System.out.println("cadence:" +
             cadence + " speed:" + 
             speed + " gear:" + gear);
    }
}

Синтаксис языка программирования Java будет выглядеть в новинку для Вас, но проект этого class основан на предыдущем обсуждении велосипедных объектов. Поля cadence, speed, и gear представьте состояние объекта, и методы (changeCadence, changeGear, speedUp и т.д.), определяют его взаимодействие с помощью внешнего мира.

Вы, возможно, заметили что Bicycle class не содержит a main метод. Поэтому это не полное приложение; это - только проект велосипедов, которые могли бы использоваться в приложении. Ответственность создания и нового использования Bicycle объекты принадлежат некоторому другому class в Вашем приложении.

Вот a BicycleDemo class, который создает два отдельный Bicycle объекты и вызывают свои методы:


class BicycleDemo {
    public static void main(String[] args) {

        // Create two different 
        // Bicycle objects
        Bicycle bike1 = new Bicycle();
        Bicycle bike2 = new Bicycle();

        // Invoke methods on 
        // those objects
        bike1.changeCadence(50);
        bike1.speedUp(10);
        bike1.changeGear(2);
        bike1.printStates();

        bike2.changeCadence(50);
        bike2.speedUp(10);
        bike2.changeGear(2);
        bike2.changeCadence(40);
        bike2.speedUp(10);
        bike2.changeGear(3);
        bike2.printStates();
    }
}

Вывод этого теста печатает конечный тактовый сигнал педали, скорость, и механизм для этих двух велосипедов:

cadence:50 speed:10 gear:2
cadence:40 speed:20 gear:3

Проблемы с примерами? Попытайтесь Компилировать и Выполнить Примеры: FAQ.
Жалобы? Поздравление? Предложения? Дайте нам свою обратную связь.

Предыдущая страница: Каков Объект?
Следующая страница: Каково Наследование?