ПредишенСледващото

нови материали

Обекти, методи и свойства

Обекти и прототипи

Сега, въз основа на обичайната обектно-ориентиран йерархичен модел на наследяване в Java, можете да създадете дете обекти (класове), например, за тези видове машини, като камион и автобус:

В този случай, Автобусни и товарни обекти наследят всички имоти от родителя се противопоставят на автомобили. В този случай, те ще наследят свойствата на продавача и модел. Имайте предвид, че при определяне на класовете на Java, необходими всеки път, за да се определи начина, по име съвпада с името на класа. Този метод се нарича конструктор, и се нарича автоматично при създаване на ново копие на обекта. Имайте предвид, че в обектно-ориентирани езици, обектът трябва първо да бъдат идентифицирани и след това - създаден, като се обадите на строителя.

След това създайте деца обекти, които наследяват имоти Автомобилна клас:

функция на камиона () Lorry.prototype = нови коли; функция шина () Bus.prototype = нови коли;

Очевидно е, че създаването на нови обекти, първоначално не е свързан с един родител, че, отново, не е типично за освобождение на Палестина. Свързването към класа родител се прави отделно, като се използва прототипа ключова дума, която се използва, за да покаже, че обектът, който се създава на базата на друг обект, наречен прототип.

Обекти и техните свойства

За да присвоите свойство на обект никаква стойност, това е достатъчно, за да присвоите. Например, ако се вгледаме в примера по-горе с обектно-превозно средство, или по-скоро, с камион, а след това да зададете стойности за всички свойства на камиона обект, трябва да напишете следното:

Var MyTrack = нови камиона; // създаде например на обекта, на основата на камиона MyTrack.vendor = "КАМАЗ"; // определи стойността на продавача MyTrack.model = "6520"; // определи стойността на модел на MyTrack.carrying_tons = 20; // определят свойства carrying_tons стойност

Тъй като променлива MyTrack е пълен обект, можете да използвате с оператора, за да се запише по-компактен:

MyTrack [ "продавач"] = "КАМАЗ"; MyTrack [ "модел"] = "6520"; MyTrack [ "carrying_tons"] = 20;

Сега, когато се е занимавал с прехвърлянето на стойности на свойствата на обектите, да се създаде функция, която ще върне всички свойства на обекта, заедно с техните ценности. За това ние трябва оператор, за-в, с която можете да организирате една линия, че се изпълнява за над всички свойства на обекта. В резултат на това, ние получаваме за тази функция:

В резултат на такава функция е изтеглянето на всички свойства на обекти със стойности:

carrying_tons = 20 продавач = КАМАЗ модел = 6520

Резултатът ще изглежда по-добре, ако заглавието на имота, предшествано от името на самия обект. За да направите това, можете да обновите множествена функция, така че да се получи, както е вторият аргумент името на обекта:

функционални show_props (OBJ, obj_name)

Сега ние трябва да използва този аргумент. За да направите това, да прави промени в линията, за да "събере" в резултат на:

резултат + = obj_name + "." + I + "=" + OBJ [Ь] + "\ п";

Ако ние наричаме тази функция, да го използвате като аргумент на метода на document.write, извеждане на текст директно в HTML-документа, ще видите нещо подобно на това в браузъра:

MyTrack.carrying_tons = 20 MyTrack.vendor = КАМАЗ MyTrack.model = 6520

Пълна например може да се намери в обекти \ automobile.html файл.

Създаване на нови обекти

По този начин, в момента на създаване на нова инстанция на обект тип автомобил можете веднага да се определят стойностите за всички негови свойства:

По този начин, нашата цел е да се опише на превозното средство, може да се запише като:

В този предварително определяне на функцията конструктор вече не е необходима, тъй като веднага след като се създаде променлива, която е инстанция на даден обект. Всъщност, в това се крие основният недостатък на този подход: ако имате нужда да се създаде друг подобен случай, ще трябва отново да се изброят всички негови свойства.

На последно място следва да се разгледа друг аспект на създаване на обекти, свързани с това, което може да бъде неговите свойства. В предишните примери сме използвали само прости типове данни - като струни или цифри. Но в действителност, собственост на обекта може да бъде друг обект. Така например, на описанието на машината, можете да добавите имот като мотор. На свой ред, двигателят може да има свойства, като например обем и брой на цилиндрите. По този начин, като се използва класическия подход, ние определяме първия обектно-двигател, а след това на обекта - машината:

Сега се опитайте да се създаде на обекта и да се определят стойностите на всички свои качества. Ако се появят първите три свойства на въпроса, как да бъде последната, която е обект? На първо място, ние трябва да се създаде копие на обекта, и само тогава, когато вече е определен, можете да създадете копие на автомобил:

Разбира се, да се създаде такъв обект може да бъде и с помощта на инициализиране. За тази цел в рамките на дефиницията на даден обект като свойство показва, че определянето на друг обект. Тя ще изглежда така:

И в двата случая, ние веднага ще се присвоява стойност на всички имоти. Въпреки това, ние все още остава открит въпрос се променят свойствата на обектите. И това се прави отново с помощта на нотацията точка, само за да стигнете до параметрите на двигателя, ние ще трябва да използват точка два пъти:

MyCar.engine.volume = 1.3; MyCar.engine.cylinders = 4;

Ако една от свойствата на обект двигателя също е обект, той ще трябва да използват точка три пъти, и т.н. Един пример може да се види в car_object.html файл.

методи обект

За създаване на метод, той трябва, на първо място, напишете функция, която ще го прилага, а след това да го посочите в конструктора на обекта. Да предположим, че ние не се пречи на функцията, която показва таблица на всички свойства на превозното средство (или по-скоро обект колата). В такъв случай, ние напише функция:

Тази функция първо създава променлива ул низ, който носи всички характеристики на даден обект с HTML-оформление, и показва този низ към браузъра. Моля, имайте предвид, че свойствата на функцията на обекта на повиквания, използвайки този указател - този синтаксис означава, че тази функция ще от обекта.

Сега, когато имаме функция, която е да се дефинира метод в обекта. За да направите това, трябва само да добавите името на функцията на описанието им:

Сега се създаде обект от типа автомобил, можете просто да използвате собствения си метод за показване на всички параметри в таблицата:

Фиг. 4.3. В резултат на метод displayCar () обект на колата

Напълно работещ пример displayCar () метод, при който в продължение на няколко обекта, като колата може да се намери в methods.html файл.

Някои методи на прозореца и документ

На първо място, този метод за предупреждение, бързо и Потвърждение, принадлежащи към обекта на прозореца, както и метода на сигнала, което води до модален диалогов прозорец с текста, ние вече са запознати:

Останалите 2 метод също така да създадете модални диалогови прозорци, но те се различават по това, че се очаква на потребителя за конкретно действие. Така че, потвърди метод ви позволява да изберете един от два отговора:

В резултат на тази команда на браузъра ще се покаже прозорец с посочения текст и предлага да се направи избор в полза на един от двата възможни отговора (фиг. 4.4).

Фиг. 4.4. Избор от два отговора - първата стъпка към интерактивност

За да използвате този метод се връща невярна или вярно, в зависимост от това, което потребителят кликне върху бутона, трябва да се прибегне до условния изявлението. Например, за да видите таблица с информация за машината, само ако потребителят е съгласен, можете да промените кода, както следва:

ако (потвърдите () "Vvyvesti около машината?") MyCar.displayCar (); друго предупреждение ( "Сам отказва!");

Сега, в началото на документа се зарежда ще покаже диалогов прозорец с определения ни въпрос и натиснете "ОК" и "Отказ". Ако кликнете OK, ще видите таблицата с характеристиките на колата, в противен случай тя ще изглежда в нов прозорец с думите "отказали да се!".

Още по-интересно е бърз метод, който позволява на потребителя да въвежда своите ценности като отговорите на въпросите, с помощта на този метод, въпроси. Например, можете да поиска от потребителя за името му:

Var име = ред ( "Как се казваш?");

В резултат на тази функция е на прозореца, който съдържа текста на въпроса и линията за отговор (фиг. 4.5). Фактът, че върнатата стойност на този метод, тъй като е необходимо по някакъв начин да се използва (например задаване на име на променлива), не трябва да доведе до проблеми, тъй като бързото метод, както и за потвърждение, е функция, която връща стойност.

Фиг. 4.5. Диалоговия прозорец, причинени от бързото

Тъй като прозореца на заявка, причинени от ред, тъй като има 2 бутона, трябва да се има предвид, че ако потребителят вместо да въвеждате текст и натиснете ОК, за да кликнете върху "Отказ", върнатата стойност е нула. Ако потребителят кликне върху OK, оставете полето празно, върнатата стойност е празен низ. Но за разлика от сигнала, и за потвърждение, за бързата метода, всъщност, има още един параметър, който определя отговора на въпроса за неизпълнение на задълженията. Например, можете да посочите всяко име, като обобщава универсален отговор:

Var име = ред ( "Как се казваш?", "The Wanderer");

ЗАБЕЛЕЖКА
MSIE браузър в метода на бързото повикване без допълнителен параметър като низ по подразбиране се придържа неопределено. Ето защо, за да не се въвеждат объркване в потребителите, а не да го накара да изтриете този надпис, винаги използвайте допълнителен параметър, дори и сочейки към празен низ като стойност.

Използвайки метода на пример ред може да се направи с класа на превозното средство от най-интересните, като предоставя възможност да въведете (или редактирате) параметрите на машината чрез последователно извеждане на няколко прозореца с запитвания. Обновен така че можете да видите пример в confirm.html файл.

За да създадете диалогов прозорец (т.е. нормални прозорци на браузъра, които показват съдържание на HTML-документи), използвани отворен метод:

Var NewWindow = window.open ( "ReadMe.html", "Readme"); NewWindow.close ();

Това създава нов прозорец на браузъра, когато изтеглили ReadMe.html файл, веднага след което той е затворен, като се използва различен метод - в близост.

Като параметри на прозорците могат да определят размерите му, както и да определят присъствието или отсъствието на контролните елементи (особено, лентата с инструменти). Например, за да се създаде един прозорец на ширина 400 и височина 300 пиксела, а не като на лента с инструменти могат да бъдат причина отворен метод със следните параметри:

Var NewWindow = window.open ( "" "", "лентата = 0, височина = 300, широчина = 400");

Ако обектът на прозорец е отговорен за прозореца на браузъра, обект на документа се отнася директно до съдържанието му. Така че, за предмета на документа, също има отворен метод, но той не създава нов прозорец и зарежда документът е на разположение:

document.write ( "Текстът, който ще бъдат записани в документа"); document.writeln ( "Текстът, който също ще бъде записано в документа");

Разликата между отписването () и writeln () е само в това, че последният добавя символ "Онлайн емисия» (\ N). След приключване на изходния текст в документа, е полезно да се използва методът на близо:

Тук ние сме преди всичко създаване на нов прозорец (NewWindow). Първоначално тя ще бъде празна, но ние може да му донесе един текст, да го отвори за запис и с помощта на метод writeln.

По-пълно пример, който илюстрира как методи и прозорец документ, могат да бъдат намерени в window.html файл.


SNK GSCP - нова библиотека за PHP 5!
Web Studio и Visual Workshop Библиотека:
Стандарти за уеб-технологии
Монопол ст. 2.0.2 Downloads:
изтегляне на софтуер Продукти:
програми и книги

Свързани статии

Подкрепете проекта - споделете линка, благодаря!