A apostila é muito boa para conceito de OO. A figura do carro e do projeto como objeto e classe ficou ótimo:lol:! Parece idiotice mas quem está aprendendo realmente embaralha classe e objeto. Lembro que na faculdade quando a matéria Linguagem de Programação foi Pascal, todo mundo fundiu a cuca. Se não me engano, no Pascal a palavra reserada para declarar uma classe era “Object” :shock: . No delphi já é class mesmo.
cv1
A confusao entre classe e objeto eh bem justificada, pq na OO voce nao precisa de classes!
Hmm… deixa eu repetir essa:
Orientacao a objetos nao implica na existencia de classes! Orientacao a objetos implica na existencia de objetos, e nao necessariamente nada mais do que isso.
Vejamos:
JavaScript nao tem classes, e eh tao OO quanto Java.
Io (http://www.iolanguage.com) nao tem classes, e eh “mais OO” do que Java (por nao ter tipos primitivos)
Nao eh a toa que a separacao de conceitos entre classes e objetos eh confusa - pq ela na verdade nao existe (afinal, a “‘planta’ de um objeto” tambem eh um objeto, e deveria seguir as mesmas regras, nao?)
Luca
Olá
Para esclarecer de vez (ou não, hehehe) vou usar uma definição que aprendi desde quando pela primeira vez tomei contato com OO (com Bjarne Stroustrup em C++ Programming Language):
“An object is a region of storage”
Traduzindo: Um objeto é apenas e tão somente um pedaço da memória do meu programa em execução.
Explicando:
:arrow: Dentro da memória do meu programa em execução não existe nenhuma classe.
:arrow: No meu código fonte não existe nenhum objeto.
Em outras palavras
Classes são tipos, isto é, são apenas definições. Só existem onde a gente define as coisas: papel, lousa, código fonte, cabeça, etc.
Objetos são montes de bits e só existem na memória (primária, secundária, etc.), nunca existem no papel, na lousa ou no código fonte.
Por este motivo é que sempre morro de rir quando alguém pergunta em um teste de admissão em empresa como se faz para converter uma classe string em inteiro. Uma das respostas certas é: usando lápis e borracha. Apaga String e escreve Integer. :lol:
[]s
Luca
lucao
Cara, parabéns, muito boa, principalmente para iniciantes !!
Java_Vinicius_Machin
Dei uma lida meio por cima mas ao que parece tah muito boa meu! :thumbup:
fmeyer
Boa Daniel, Parabens
cv1
Nao sei se essa definicao eh muito boa, nao, Luca - ela, de certa forma, implica que um objeto nao possui codigo. Da mesma forma, a seguinte definicao tambem eh valida, em C:
Claro, tudo depende da definicao de “region of storage” que voce usa, e provavelmente a que o Strutssoup (que trocadilho horrendo, afe maria) usou encaixava direitinho na maneira com que ele via objetos em C++. Com um pouco mais de ginastica mental, dava ate pra imaginar essa “region of storage” contendo referencias para os metodos e objetos-pai (superobjetos?), mas ainda acho meio confuso.
Eu prefiro pensar em objetos como bonequinhos do Commandos em Acao passeando pela memoria e interagindo entre si. Mas eu sou doente :mrgreen:
1112
Muito legal.
O melhor é que eu estou organizando material para um curso de reciclagem por aqui na empresa (sim, temos muitos aqui que sabem como não programar em Java e efetivamente o fazem) e eu gostei de ver que eu e o Daniel abordamos pontos parecidos, o que siginifica que, se estamos errando, estamos errando igual. :¬P
P.S.: só que há um “intâncias” na página 13.
Luca
Olá
Sempre adorei esta definição pq deixa claro a diferença entre classe e objeto.
É óbvio que uma instância de um tipo byte, int, double ou strut também são pedaços de memória. Mas neste caso ninguém tem dúvida do que é tipo que só existe no papel e o que é a alocação na memória.
[]s
Luca
Lich_King
então objetos é q são convertidos e não classes…é isso, neh? 8)
grprado
Sim
Alguma vez você converteu um objeto A para uma classe B? Ou uma classe A para uma classe B?
Você sempre converte um objeto para outro.
T
truck1n
cara vo começar a ler a apostila agora… foi oq ue eu estava procurando…
jajaj posto minhas dúvidas, o pessoal ta elogiando demais!
Tente revisar os erros de português apenas, como por exemplo a palavra “paradigma”, que no slide de Conclusão está acentuado, como a palavra “si”, no 7º slide… Além de outros…
No mais, ajudou-me muito a compreender realmente o que é a Orientação a Objetos, já que estou preparando uma apresentação de trabalho da Faculdade…
Obrigada,
Fernanda Cerqueira
Marcio_Nogueira
A diferença entre Classe e Objeto, é que a Classe seria a “forma” e o Objeto o produto “fabricado” pela forma.
C
ClaudineiJacarei
Essa apostila esta melhor que a do meu curso.
danieldestro
Qual é o seu curso?
C
ClaudineiJacarei
…
cv1
E a forma nao deixa de ser um objeto, tambem? Quem fabrica as formas?
Pronto recebi a apostila, agradeço ao usuário Claudinei (não sei se o nick dele é o mesmo do nome aqui).
Muito obrigado!
bzanchet
deus?
R
re_dexter
Deus*
pcstwo
Luca:
Eu prefiro pensar em objetos como bonequinhos do Commandos em Acao passeando pela memoria e interagindo entre si. Mas eu sou doente :mrgreen:
Cara, não acho você tão doente assim (rs) porque também vejo desta forma. :thumbup:
Grinvon
Bom, parabéns Daniel, sua apostila está clara, objetiva e interessante.
I
itopaulo
Obrigado pelas opostilas, vai ser muito útil para mim, que sou iniciante em java e estou com muita vontade de aprender tais conceitos, principalmente java para web… e oop… valeu