|
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.
[Чтобы сделать: добавьте раздел по инициализации экземпляра (перед разделом инициализации переменной экземпляра). Затем очистите раздел инициализации переменной экземпляра]