Spec-Zone .ru
спецификации, руководства, описания, API
|
Оглавление
Классы представляют виды вещей, ли они быть конкретными вещами, графическими вещами, или концептуальными вещами. И экземпляры классов представляют определенные вещи. Например, в JavaFX:
class Shoe { var color : String; var size: Number; var style : String; } def rubySlipper = Shoe { color: "red" size: 7 style: "slipper" }
Здесь Обувь class представляет своего рода вещь, и экземпляр, сохраненный в rubySlipper, является представлением конкретной вещи. Отметьте, что есть переменные экземпляра, которые хранят состояние экземпляра.
Принимая во внимание, что class CheckBox является своего рода графической вещью:
public class CheckBox extends CustomNode, Resizable { public var title : String; public var visible : Boolean; public var skin : Skin on replace oldSkin { if (skin != null) then skin.control = this; if (oldSkin != null) then oldSkin.control = null; } public function requestFocus() : Void { if (visible) then skin.requestFocus(); } }
Это расширяет два других класса (CustomNode и Изменяемого размера), поэтому включая их переменные экземпляра и функции экземпляра. CheckBox добавляет еще три переменные экземпляра, включая кожу, у которой есть пункт на замене, чтобы поддерживать отношения между кожей и CheckBox. Это также добавляет функцию экземпляра requestFocus.
[Чтобы сделать: добавьте раздел по инициализации экземпляра (перед разделом инициализации переменной экземпляра). Затем очистите раздел инициализации переменной экземпляра]