Qual é a diferença entre java e javascript?

Java é uma linguagem de programação desenvolvida. Você pode escrever aplicativos autônomos com ele. Você não pode fazer isso com javascript. É uma linguagem de script usada pelo navegador para executar coisas em sua página da web, você não pode escrever aplicativos independentes com ela.

O motivo da semelhança no nome é um acordo de licenciamento entre a Sun Microsystems e a Netscape que ocorreu em meados dos anos 90.

A Netscape criou uma linguagem de script para navegadores chamada Live Script. Java, naquela época, era uma linguagem de programação nova e quente. Portanto, como forma de comercializar sua nova linguagem de script, a Netscape fez um acordo com a Sun para usar o nome Java no nome de seu script.

A Microsoft logo criou uma versão de Javascript chamada 'JScript'. Alguns anos mais tarde, quando o Javascript foi considerado para padronização, o nome 'javascript' não era usado para o padrão. Eu ouvi falar de várias razões diferentes para isso, uma delas é que a Microsoft lutou e a outra tem a ver com a propriedade do nome 'Java' da Sun. De qualquer forma, o nome ECMAscript foi usado para o padrão, sendo o ECMA a organização que publicou o padrão.

Portanto, além do nome, não há realmente nenhuma boa razão para comparar os dois idiomas.

editar:

JS de fato possui tipos primitivos. Verifique a especificação ECMA 4.3.2 e as partes 8 e 9.1

(9.1 descreve o método 'ToPrimitive')

A conversão automática entre objetos e primitivos é um dos principais recursos do JS. Na verdade, acontece com bastante frequência ao converter entre primitivas de string e o objeto String.

Só porque uma variável não é declarada como um tipo primitivo específico, não significa que não seja uma primitiva.

Minha declaração original de que não há um bom motivo para comparar Java a Javascript não é exatamente o que eu quis dizer. O que realmente quero dizer é que não há mais razão para comparar Java com Javascript do que com qualquer outra linguagem. A razão pela qual isso é feito com tanta frequência - (e na verdade eu acabei de ver esse erro cometido no texto sobre Segurança de computadores - o livro perdeu credibilidade para mim naquele ponto) é a semelhança no nome.

A postagem abaixo de mim, com os 4 grandes polegares para cima, apresenta alguns detalhes. Há muito mais detalhes que podem ser trazidos para isso, mas eu realmente não vejo sentido em fazê-lo, a menos que seja entendido pelo OP que a semelhança dos nomes não é um bom motivo para fazer uma comparação geral entre os dois línguas.

edit2:

Não.

Operadores como ToPrimitive são representações abstratas das operações internas do mecanismo JS (ou ECMAScript) (analisador e lexer do interpretador). Eles servem para permitir que aqueles que especificam os requisitos do motor e aqueles que os implementam comuniquem claramente os requisitos da especificação. Esses operadores não têm representação real no espaço de programação.

E, correndo o risco de ser tagarela, a razão para comparar e contrastar Java e JavaScript é que alguém fez a pergunta. Denegrir a pergunta e prejulgar o motivo do autor da pergunta são presunçosos, condescendentes e insultuosos.

diferença clara entre com exemplo