java.lang.Object
|
+--java.lang.Number
|
+--java.lang.Integer
E é aconselhado a todos os programadores a herdar sempre a classe Object ou outra classe filha desta em suas classes propietárias.
2B) Enum nunca estudei ou mexi com isto em Java, não posso opinar. Caso de struct qual a rapidez em instanciar uma classe ou uma struct???
Creio que se tenha alguma rapidez em criar uma variavel de uma struct em relação a uma classe isto deve-se apenas a politicas dos compiladores
caso se queira poderia ser feito algum pulo no Javac para que este ao perceber que uma classe não tivesse nenhum metodo não procurasse por
constructors,etc (acho que isso nestes casos diminue a performance).
2C) Trabalho muito com C++, esta é minha linguagem digamos padrão, e tenho experiencia suficiente para dizer que ponteiros, são excelentes
visto que o sistema que trabalho é uma ferramenta GIS e trabalha com muita informação em memoria. Porém eles abrem um gap para que a
quantidade de erros proliferem no código. C++ apesar de ser considerada uma linguagem Orientada a Objetos, eu não a considero como tal pois
percebi que sempre qdo a coisa aperta é natural para um programador C++ colocar uma variavel global de controle, fazer acesso direto a um atributo
de uma classe. Então se a linguagem não for totalmente orientada a objetos a chance de se trabalhar de forma errada aumenta. Vou citar algo que escutei
porem não tenho conhecimento para valida-lo "A linguagem Java ainda não é totalmente orientada a objetos por ter um ponto de entrada fixo (main) e tipos
primitivos, nisso ela se distancia um pouco do SmallTalk".
2E) E o caso de microcontroladores e arquiteturas de processadores com java embutido cuja a linguagem nativa da máquina é bytecode?
E se não fosse as modificações que a Micro$oft fez no Java e a Sun não aceitou!!! A Microsoft continuaria bajulando o Java. Acho que o grande motivo de tudo
é um egocentrismo da Microsoft. Tipo coisa de criança dona da bola se eu não for titular eu não brinco, e leva a bola embora.
- -----Mensagem
original-----
De: Alan Borsato [mailto:[EMAIL PROTECTED]]
Enviada
em: quarta-feira, 3 de outubro de 2001 9:31
Para:
[EMAIL PROTECTED]
Assunto: [java-list] Artigo Java x
C#
Eu acho justo apresentar a resposta dele
tambem...
Caro
Alan,
Em breve publicarei um artigo no site da Microsoft contendo
explicações
extensas a estas e outras dúvidas. Por enquanto, aceite esta
breve resposta.
1)Portabilidade
Quis me concentrar apenas na
linguagem, como explicado no início e coerente
com o próprio
título.
2A)Ancestral comum
Repito: O Java não tem um acenstral comum
de todos os tipos. Os tipos como
inteiro não são derivados de onject. No
C# sim.
2B)Structs e enums
Ter enum e struct não faz a linguagem
menos orientada a objetos. Pode fazer
os programas mais rápidos,
contudo.
2C)Ponteiros
Mesmo que o anterior
2D)UML
!!! Não
falei nada de UML.
2E)Compilação
!!! O java foi feito para ser
interpretado e continua assim. Não neguei que
existam compiladores; releia
o artigo. Uma discussão de "quantos porcento
das vezes o Java é compilado"
é tão frutífera como discutir o sexo dos
anjos.
Mauro
Jamais
citei UML.