Qual a melhor linguagem de programacao?

Suportar ou não herança múltipla não caracteriza a orientação a objetos de uma linguagem. Na verdade (opiniao extremamente pessoal), eu acho herança simples mais OO do que a múltipla. :wink:

Por que?

Até.

A melhor linguagem é aquela que você se adapta melhor e domina melhor, não existe uma “melhor” linguagem, existem linguagens mais adaptadas para certos tipos de projeto.

Herança simples de fato é melhor para trabalhar que herança multipla, mas não acho que herança multipla não é uma característica anti-oo.

Diria que cada a linguagem está intimamente relacionada com o problema a ser resolvido(plataforma, tipo de processador, necessidade do cliente, etc, etc, etc).

Sobre o caso de heranças não diria que a simples eh melhor que a multipla, vc soh usa multipla quando realmente tem necessidade.
Abraços.

[quote=“rogeriop80”]Sobre o caso de heranças não diria que a simples eh melhor que a multipla, vc soh usa multipla quando realmente tem necessidade.
Abraços.[/quote]
Até aí tudo bem já que vc só vai usar herança simples quando houver necessidade tambem! O que eu não entendi foi a afirmação do cv de que “herança simples é mais OO do que a múltipla”. :roll:

Até.

Tá bom, eu explico: objetos, no mundo real, não têm herança múltipla. Que me provem o contrário :wink:

CLISP, java is for sissies.

Tá bom, eu aceito, afinal, dez anos luz alem da borda do universo há uma serie de smiles jogando pinball. Que me provem o contrario. :wink:

Brincadeiras à parte, cv, reza a lenda que quando vc quer simular herança multipla em Java faz uso de interfaces. Algo como String ser tanto Serializable quanto Comparable. Hum, tá, não é herança a rigor já que aqui se faz uso apenas de polimorfismo e herança implica ainda que a subclasse herde codigo. Mas, o conceito que um mesmo objeto precisa, em alguns casos, ter duas caracteristicas relativamente distintas, como Serializable e Comparable, não faz jus a herança multipla?!

Até.

Lembra daquela mutação metade coelho metade gato que fizeram? Se me lembro bem o bichinho viveu por dias :mrgreen:

Muito boa LIPE!(huaauhauahauhh…)
Não lembrava q existiam quimeras tão avançadas…(no reino dos mamíferos)
Cv,já existem peixes com genes de água-viva,há testes de pessoas recebendo órgãos desenvolvidos em porcos…O Objeto homem recebendo fígado desenvolvido em um Porco,e o rim de um primata(não-hominídeo) não está herdando de Porco e Primata?Ou Porco é interface?(Huaauhauhauhuahauaah)

Hmmm… não. Uma interface implementada dá novas características a um objeto. São adjetivos: serializável, comparável, fechável, iniciável, e por aí vai. Mas uma String é uma String, antes de ser comparável, ou serializável. Um homem com fígado de porco ainda é um homem, com uma outra implementação de fígado. Um carro anfíbio continua sendo um carro, que consegue navegar, mas se ele tem jeitão de carro, e é dirigido como um carro, ele ainda eh um carro.

Nao lembro agora de onde veio essa frase, mas “if it quacks like a duck, flies like a duck, then it’s a duck” :smiley:

[quote]Um homem com fígado de porco ainda é um homem, com uma outra implementação de fígado. Um carro anfíbio continua sendo um carro, que consegue navegar, mas se ele tem jeitão de carro, e é dirigido como um carro, ele ainda eh um carro.
[/quote]
Hum…não,não,não…CV!Um homem pode vir a ter 90% de seu corpo oriundos de outros seres…fígado,rins,coração,intestinos…fora córneas e pele artificiais e etc… tirando o cérebro(q seria o identificador -id do objeto).
Um autômato poderá ser criado com a semelhança externamente de um ser humano,mas será humano?Pára para pensar…isso q vc falou,nos leva a concluir que a InterfaceGráfica é que define um objeto(e mesmo assim uma quimera pode ser feita para mesclar as características de 2 diferentes seres-acredite essa bizarrice eh possível-não posso afirmar em seres superiores como o ser humano…mas é provável q sim)…não ficou nada claro!Claro,vc pode dizer que o cérebro é q define o objeto homem,aí tudo bem…é difícil para qualquer um imaginar herdar diferentes tecidos cerebrais gerados em diferentes animais(apesar de eu achar q pode ser feito,pois o mais importante é a energia vital nele armazenada…isso é uma outra história)…vc não viu o carro híbrido?vira lancha(a até 50km/h e vira carro…).Ele fica com muita cara de lancha qdo fica em modo náutico!Cara,fígado,coração,rins…do meu ponto de vista seria atributos do objeto homem,não métodos implementados de uma interface seja ela qual for…(apesar de se der uma olhadinha melhor…homem eh uma supeclasse com um array de objetos,cada objeto representando um órgão vital,e suas ações-operações-respectivas em cada método…).Isso é muito abstrato.Poderemos ver N situações de diferentes modos.Depende sobre qual aspecto iremos fazer uma análise.Deve ser por isso q inventaram AOP…

Ironlynx, eu não sei o que vc anda usando, mas po, compartilha aí com a galera, que o bagulho é do bom. :smiley:

Sobre a interface gráfica definir o objeto: hmm, quase. Não é a interface gráfica, mas sim a interface. Não interface no sentido Java da coisa, mas interface no sentido de “atributos, métodos e outras coisas públicas”.

O que é uma “classe”, pro Java?

  • Nome (package + nome, aliás)
  • Superclasse da qual ela extende
  • interfaces implementadas
  • Atributos
  • Blocos estáticos
  • Construtores
  • Métodos
  • Inner classes

É possível ter duas classes exatamente iguais convivendo dentro de uma mesma VM, mas com implementações diferentes? Sim. Dentro do mesmo ClassLoader? Não. [size=“7”](louds, falei merda aqui?)[/size]

É possível ter dois objetos exatamente iguais no mundo real? Não, pq pra começar eles não são feitos dos mesmos átomos, e não ocupam o mesmo lugar no espaço. Mas é possível dizer que dois objetos são “parecidos o suficiente” para se poder dizer que eles são iguais para fins práticos. Ou seja, eles apresentam as mesmas características e respondem da mesma maneira aos mesmos eventos. Água e azeite não são iguais, e nem mesmo uma gota d’água é igual à outra, mas a gente entende que água é tudo igual pq ela geralmente apresenta as mesmas características, que definem o que é água. Estas características, pro Java, são a definição da classe. Não existem dois objetos idênticos em Java. Existem objetos similares o bastante pra que a gente não se importe com as diferenças (por exemplo, a localização deles na memória).

E toda essa explicacao serve pra dar a conclusao absurda de que, sim, mesmo que “um homem possa vir a ter 90% de seu corpo oriundo de outros seres”, se ele ainda possui a mesma interface e reage aos mesmos estimulos que a maioria dos outros homens, sim, ele eh humano, e nao venha com papinho de ficcao cientifica hollywoodiana. :wink:

http://www.kopenhagen.com.br/
AVISO:Os de cereja ao licor causam dependência forte.Eu avisei.

Nada contra sua breve,mas concisa explicação do que é classe em Java,mas sua própria definição de herança,mata a necessidade até de herança simples(no que eu entendi da sua explicação).Representemos tudo via interfaces e pronto.Herdar para que?
Concordo plenamente que cada objeto é como um ser único(alguem disse:uma pessoa jamais se banha 2 vezes no mesmo rio pois na segunda vez q ela se banhar não será a mesma pessoa,nem será o mesmo rio…).

E quem tava falando de igualdade de objetos?Viaje dentro da maionese cv!O Assunto é Herança Múltipla!Apenas citei aparência pq vc levou para esse lado…

Perfeito.Tempo,interação fenotípica(do ser com o meio) e genotípica diferem entre todos e nem gêmeos univitelinos serão iguais em todos esses aspectos.
Cv uma perguntinha para vc:
Vc nasceu como?Reprodução sexuada entre seu pai e sua mãe certo?(nota:espero q sua mãe não seja um caso único na humanidade de partenogênese como o ocorrem com alguns escorpiões e talz…)
De quem vc herdou os seus atributos hereditários?Dos 2!De um homem e uma mulher…acho q apartir desse princípio não dá para generalizar e o caso é de herança múltipla sim…
Se vc dizer todos são “humanos” posso dizer q como a diferença do homem e um macaco é inferior a 0.5% posso dizer seguramente q todos são “primatas”… como a diferença entre o homem e o camundongo é de apenas 300 genes(em 30000),podemos englobar a ordem dos roedores tb…perái,não é tudo da classe dos mamíferos?(Aliás,corrigindo uma besteira q eu tinha escrito antes "reino dos mamíferos"santa ignorância!Reino é animal,aironlinquiz!!!-como pude escrever isso pqp!matei a taxonomia… huahaha!)…Logo cv,chegaremos ao ponto q todo mundo descende(Herda) de todos ou tem algo em comum…e a lugar algum.

Hum…vc acaba de provar a minha teoria q as máquinas se igualarão aos seres humanos,afinal humano é o q lhe parecer humano certo?Obrigado cv.

Pra separar comportamento em comum, onde ele existe, de comportamento específico. Se não existe comportamento em comum, não faz mesmo nenhum sentido usar herança, mas, pro bem da orientacao a objetos, comportamento em comum eh o que nao falta.

Voce esta confundindo protótipo com instância. Os dados do meu DNA foram, sim, herdados da minha mãe e do meu pai. Ou do carteiro, padeiro, leiteiro, sei lá. Não vem ao caso. Mas a definicao do meu DNA, não. Se é pra entrar na parte mais nerd da coisa, eu sou uma instancia, eu sou um objeto, nao uma classe. Uma classe é intangível, é um protótipo, apenas, é a definicao do DNA, se é que isso existe, e nao os dados contidos nele. Eu sou do tipo humano, eu não sou o humano. É instanceOf, e não isA. Lembre-se que:

new Object().equals(new Object()) == false

Enquanto:

Object.class.equals(Object.class) == true

Se vc quiser classificar os tipos das coisas, entao voce vai ter que classificar as classes, e nao as coisas em si. Logo, um humano herda caracteristicas dos primatas, que por sua vez herda caracteristicas dos mamíferos, que por sua vez… e assim vai.

Vamos assumir o DNA como sendo a “classe” da biologia, mesmo isso nao sendo muito verdade. Voce pode argumentar que, mesmo com uma diferenca de apenas 300 genes entre um homem e um camundongo, que eh uma diferenca pequena no “codigo”, ainda assim a diferença no comportamento resultante das instâncias é bastante significativa em quase todos os quesitos de avaliação. Se não é exatamente a mesma classe, as instâncias não poderiam ser iguais, certo? :wink:

Ô discussão besta do [insira seu palavrão favorito que começa com C]

:mrgreen:

Às 3 da madrugada. :shock:
Acho que eu estou dormindo demais. :?

Herança multipla é como composição, porém sem poder separar as partes.

Um bom exemplo é o Jaspion, ele herda de “armadura metálica da hora” e de “japoneis from the outer space”, uma ‘coisa’ completa a outra de forma que criam uma ‘coisa completa’, separadas não teriam a menor graça ou finalidade.

Ok galera…acho que deu para eu ter uma ideia do negocio…

Outra coisinha…quer dizer que eu poderia aprender JAVA mesmo sem saber nada de C ???

Alguem poderia me indicar um bom livro para comecar??..de preferencia em portugues (mas pode ser em Ingles tb!)

Obrigado mais uma vez,

Flavio

Tem um tópico de livros no Java Básico que com certeza vai te iluminar :smiley: