Darmowe Forum
Grudzieñ 22, 2024, 10:11:44 *
Witamy, Go¶æ. Zaloguj siê lub zarejestruj.
Czy dotar³ do Ciebie email aktywacyjny?

Zaloguj siê podaj±c nazwê u¿ytkownika, has³o i d³ugo¶æ sesji
Aktualno¶ci: Forum zosta³o uruchomione!
 
   Strona g³ówna   Pomoc Zaloguj siê Rejestracja  
Strony: [1]
  Drukuj  
Autor W±tek: Deklaracja Klasy w Java Script  (Przeczytany 2477 razy)
admin
Administrator
Ekspert
*****
Wiadomo¶ci: 821


Email
« : Maj 23, 2014, 06:54:45 »

Formalnie Java Script nie posiada klas i obiektów jako takich, ale mo¿na.......

Klasa jest pewnym obiektem sk³adaj±cym sie z dwóch podstawowych elementów: danych i funkcji. Dane nazywane s± "w³a¶ciwo¶ciami" a funkcjê nosz± nazwê "metod". Obiekty s± potomkami klasy, posiadaj± elementy klasy do której nale¿±, lecz ró¿ni± siê wprowadzonymi warto¶ciami.

Deklaracja klasy/obiektu wymaga wywo³anie specjalnej funkcji nazywanej konstruktorem. W jêzyku JS konstruktor jest funkcj±, która jest wywo³ywana ze s³owem this.

Koñczenie pracy z obiektem mo¿e byæ realizowane (ale nie musi) przez wywo³anie destruktora. Destruktor to te¿ funkcja z tym , ze czyszcz±ca obiekt z pamiêci procesu.
 W Java Script istniej± w³asne klasy ale jest mo¿liwo¶æ tworzenia w³asnych klas.
Przyk³ad.
function samochod(firma,model,rok)
{this.firma=firma
this.model=model
this.rok_produkcji=rok
}


Wy¿ej przedstawiono metodê tworzenia klasy samochod. Jak wspomina³em wy¿ej obiekt jest potomkiem klasy zatem stwórzmy obiekty czyli konkretne modele pojazdów:

var
samochod1=new samochod("Fiat","Punto", 2010);
samochod2==new samochod("Opel","Signum",2008);
var sam = new samochod('volvo','740', 1997);


« Ostatnia zmiana: Maj 23, 2014, 07:17:41 wys³ane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomo¶ci: 821


Email
« Odpowiedz #1 : Maj 23, 2014, 07:18:35 »

Deklaracja metod w klasie.
Mo¿liwe jest umieszczenie metody wewn±trz klasy.
Przyk³ad: Klasa samochod

function samochod(firma,model,rok)
{this.firma=firma;
this.model=model;
this.rok_produkcji=rok;
this.przyspieszenie = function() {this.model; };
}


Inna metoda, która przedstawiê polega na zadeklarowaniu funkcji na zewn±trz klasy i przypisaniu jej pó¼niej w deklaracji klasy. Dla przyk³adu zaprogramujmy funkcje która wy¶wietla dane o poje¼dzie.

function wyswietl()
{
document.write("Marka pojazdu: "+this.samochod.firma+"");
document.write("Model pojazdu: "+this.samochod.model+" ");
document.write("Rok produkcji: "+this.rok+" ");
};

Wpiszmy  funkcjê wewn±trz obiektu

function samochod(firma,model,rok)
{this.firma=firma;
this.model=model;
this.rok_produkcji=rok;
this.info = wyswietl;
}


Stwórzmy obiekty: samochod1 i samochod2:
var
samochod1=new samochod("Fiat","Punto", 2010);
samochod2==new samochod("Opel","Signum",2008);

Wywo³anie funkcji/metody:

samochod1.info;
 
« Ostatnia zmiana: Maj 23, 2014, 07:35:03 wys³ane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomo¶ci: 821


Email
« Odpowiedz #2 : Maj 23, 2014, 07:38:48 »

Przyk³ad praktyczny. Skrypt umieszczony wewn±trz kodu html.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
  <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2">
  <meta name="Description" content=" [wstaw tu opis strony] ">
  <meta name="Keywords" content=" [wstaw tu slowa kluczowe] ">
  <meta name="Author" content=" [dane autora] ">
  <meta name="Generator" content="">

  <title> [tytu³ strony] </title>

  <link rel="stylesheet" href=" [nazwa_arkusza_stylow.css] " type="text/css">

<script type="text/javascript">
function misio(wzrost,masa,szybkosc)
{ this.wzrost=wzrost;
this.masa=masa;
this.szybkosc=szybkosc;
}

</script>

   
   </head>

<body>
<pre>
<script type="text/javascript">
gosciu = new misio(178,120,100);
document.writeln(gosciu.wzrost);
document.writeln(gosciu.masa);
document.writeln(gosciu.szybkosc);
</script>

</pre>

<!-- tutaj wstaw tresc strony -->

</body>
</html>
Zapisane
Strony: [1]
  Drukuj  
 
Skocz do:  

Powered by SMF 1.1.11 | SMF © 2006-2008, Simple Machines LLC | Sitemap

Polityka cookies
Darmowe Fora | Darmowe Forum

blackmoon mylittlepony moikrewni spw gang-nd