Jaka jest różnica między JavaScript a Java?

zamknięty. To pytanie i jego odpowiedzi są zamknięte , ponieważ pytanie jest off-topic, ale ma znaczenie historyczne. Obecnie nie przyjmuje nowych odpowiedzi ani interakcji.

Jaka jest różnica między JavaScript i Java?

Author: Peter Mortensen, 2008-10-28

15 answers

Java i Javascript są podobne jak samochód i dywan są podobne.

 573
Author: Greg Hewgill,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-28 22:12:15

One jest zasadniczo zabawką, przeznaczoną do pisania małych fragmentów kodu i tradycyjnie używaną i nadużywaną przez niedoświadczonych programistów.

Drugi jest językiem skryptowym dla przeglądarek internetowych.

 408
Author: Shog9,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-28 22:14:08

Oto kilka różnic między tymi dwoma językami:

  • Java jest językiem typowanym statycznie; JavaScript jest dynamiczny.
  • Java jest oparta na klasach; JavaScript jest oparty na prototypach.
  • konstruktory Javy są funkcjami specjalnymi, które mogą być wywoływane tylko podczas tworzenia obiektu; "konstruktory" JavaScript są tylko funkcjami standardowymi.
  • Java wymaga, aby wszystkie instrukcje nieblokujące kończyły się średnikiem; JavaScript wstawia średniki na końcach niektórych linii.
  • Java używa zakresów blokowych; JavaScript używa zakresów opartych na funkcjach.
  • Java ma niejawny zakres this dla metod niestatycznych oraz niejawny zakres klasy; JavaScript ma niejawny zasięg globalny.

Oto niektóre funkcje, które moim zdaniem są szczególnymi atutami JavaScript:

  • JavaScript obsługuje zamknięcia; Java może symulować sortowanie "zamknięć" za pomocą anonimowych klas. (Rzeczywiste zamknięcia mogą być obsługiwane w przyszłej wersji Javy.)
  • wszystkie funkcje JavaScript są zmienne; funkcje Javy są zmienne tylko wtedy, gdy są wyraźnie zaznaczone.
  • prototypy JavaScript mogą być ponownie zdefiniowane w czasie wykonywania i mają natychmiastowy efekt dla wszystkich obiektów odsyłających. Klas Java nie można przedefiniować w sposób wpływający na istniejące instancje obiektów.
  • JavaScript pozwala na redefinicję metod w obiekcie niezależnie od jego prototypu( myśl eigenclasses w Ruby, ale na sterydach); metody w obiekcie Java są powiązane z jego klasą i nie mogą być redefiniowane w runtime.
 188
Author: Chris Jester-Young,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-04 02:02:30

Spójrz na Link Do Wikipedii

JavaScript, pomimo nazwy, jest zasadniczo niezwiązany z językiem programowania Java, chociaż oba mają wspólną składnię C, a JavaScript kopiuje wiele nazw Javy i konwencji nazewnictwa. Pierwotnie język nosił nazwę "LiveScript", ale został przemianowany w ramach współpracy marketingowej pomiędzy Netscape i Sun, w zamian za połączenie środowiska Java Sun z dominującą wówczas przeglądarką. Najważniejsze zasady projektowania w JavaScript jest dziedziczony z języków programowania Self i Scheme.

 51
Author: toolkit,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-28 22:17:20

Wszystko.

JavaScript został nazwany w ten sposób przez Netscape, aby zmylić nieświadomych do myślenia, że ma coś wspólnego z Javą, hasłem dnia, i udało się.

Oba języki są całkowicie odrębne.

 38
Author: ddaa,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-11-15 01:00:06
 24
Author: Alpine,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-03 18:20:42

JavaScript jest zorientowanym obiektowo językiem skryptowym, który pozwala na tworzenie dynamicznych stron HTML, pozwalając na przetwarzanie danych wejściowych i utrzymanie danych, zwykle w przeglądarce.

Java jest językiem programowania, podstawowym zestawem bibliotek i platformą maszyny wirtualnej, która pozwala na tworzenie skompilowanych programów, które działają na niemal każdej platformie, bez dystrybucji kodu źródłowego w postaci surowej lub rekompilacji.

O ile obie mają podobne nazwy, to są tak naprawdę dwa zupełnie różne języki/modele/platformy programowania i są używane do rozwiązywania zupełnie różnych zestawów problemów.

Również, to jest bezpośrednio z Wikipedii Javascript Artykuł :

Powszechnym błędem jest przekonanie, że JavaScript jest podobny lub blisko spokrewniony z Javą; tak nie jest. Oba mają składnię podobną do C, są zorientowane obiektowo, są zazwyczaj piaskownice i są szeroko stosowane w aplikacjach internetowych po stronie klienta, ale podobieństwa kończą się na tym. Java ma typowanie statyczne; typowanie JavaScript jest dynamiczne(co oznacza, że zmienna może pomieścić obiekt dowolnego typu i nie może być ograniczona). Java jest ładowana z skompilowanego kodu bajtowego; JavaScript jest ładowany jako kod czytelny dla człowieka. C jest ich ostatnim wspólnym językiem przodków.

 23
Author: Bill the Lizard,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-12-30 14:22:47

W dodatku do bycia zupełnie innymi językami, z mojego doświadczenia:

  • Java na początku wygląda ładnie, później robi się irytująca.
  • JavaScript na początku wygląda okropnie i beznadziejnie, potem stopniowo zaczyna ci się podobać.

(ale może to mieć więcej wspólnego z moimi preferencjami programowania funkcyjnego niż programowania OO... ;)

 17
Author: Stein G. Strindhaug,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-12-07 09:49:48

Wszystko. To języki niepowiązane.

 14
Author: Kirk Strauser,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-28 22:11:54

Są to niezależne języki o niepowiązanych liniach. Brendan Eich stworzył Javascript pierwotnie w Netscape. Początkowo nosiła nazwę Mocha. Wybór Javascript jako nazwy był ukłonem, jeśli chcesz, do ówczesnego ascendant Java język programowania, opracowany w Sun przez Patrick Naughton, James Gosling, et. al.

 8
Author: Don Wakefield,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-28 22:14:45

Jak wszyscy mówią, są zupełnie inne.

Jeśli jednak potrzebujesz języka skryptowego do swojej aplikacji Java, Javascript jest naprawdę dobrym wyborem. Istnieją sposoby, aby uruchomić Javascript w JVM i można uzyskać dostęp do klas Java i manipulować nimi całkiem bezproblemowo, gdy to zrobisz.
 5
Author: Darcy Casselman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-29 19:43:55

Nie mają ze sobą nic wspólnego.

Java jest typowana statycznie, kompilowana, uruchamiana na własnej maszynie wirtualnej.

Javascript jest dynamicznie typowany, interpretowany i uruchamiany w przeglądarce. Posiada również funkcje pierwszej klasy i funkcje anonimowe, których Java nie ma. Ma bezpośredni dostęp do elementów strony internetowej, co czyni go przydatnym do przetwarzania po stronie klienta.

Są też nieco podobne w składni, ale to wszystko.

 2
Author: Claudiu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-28 22:18:07

Nie mylić z nazwą..
Java została stworzona w Sun Microsystems (obecnie Oracle).
Ale JavaScript został stworzony w Netscape (teraz Mozilla) we wczesnych dniach Internetu, a technicznie "Java-Script" jest znakiem towarowym licencjonowanym przez Sun Microsystems używanym do opisania Implementacja języka Netscape. Netscape złożył język normalizacji do ECMA (European Computer Manufacturer ' s Association) i ze względu na problemy ze znakami towarowymi, ustandaryzowana wersja język utknął z niezręczną nazwą " ECMAScript."Z tych samych powodów, Wersja języka Microsoft jest formalnie znana jako " JScript."W praktyce po prostu o każdy nazywa Język JavaScript. Prawdziwa nazwa to "ECMAScript".

Oba są zupełnie różnymi językami!!!

 2
Author: user577898,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-08 15:43:25

Praktycznie każdy komputer na świecie sprzedaje z co najmniej jednym interpreterem JavaScript zainstalowanym na nim.

Większość (ale nie "praktycznie wszystkie") komputerów ma zainstalowaną maszynę Wirtualną Java.

 1
Author: Will Peavy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-01-11 13:42:06

Ponowne wprowadzenie do Javascript przez zespół Mozilli (tworzą Firefoksa) powinno to wyjaśnić.

 0
Author: isomorphismes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-12 23:08:24