Olá!!!
Estou tentando colocar JAVA na minha cabeça.
Favor, alguém pode me ajudar no primeiro contato das definições de classe, objeto, atributo e métodos? Pois, não consigo entender esta teoria.
Olá!!!
Estou tentando colocar JAVA na minha cabeça.
Favor, alguém pode me ajudar no primeiro contato das definições de classe, objeto, atributo e métodos? Pois, não consigo entender esta teoria.
Cara… Se você tá começando em java agora, e quer aprender o que é classe, objeto, atributo, método, “orientação a objetos” e muito mais, recomendo as apostilas do Caelum.
São gratuitas, fáceis de entender, e tem tudo.
Baixe-as aqui.
Recomendo a FJ-11 pra vc que tá começando, que conceitua tudo e começa com os códigos. Não pule apostilas, vai ficar perdidinho. “A pressa é inimiga da perfeição”. Aqui tem o link direto:
www.caelum.com.br/apostila-java-orientacao-objetos/
Boa noite!!!
Classe.: Uma classe é o agrupamento de objetos com a mesma estrutura de dados (definida
pelos atributos ou propriedades) e comportamento (operações), ou seja, classe são as descrições dos objetos!
Objeto.: De maneira geral, Objeto é uma classe sendo estanciada!! De maneira mais Conceitual, um objeto é algo distinguível que contém atributos (ou propriedades) e possui um comportamento. Cada objeto tem uma identidade e é distinguível de outro mesmo que seus
atributos sejam idênticos.
Atributo.: O conjunto de propriedades da classe!!! alguns autores preferem distinguir o mesmo como Variável…
Métodos.: O conjunto de funcionalidades da classe. Para cada método, especifica-se sua assinatura, composta por:
Nome: um identificador para o método.
Tipo: quando o método tem um valor de retorno, o tipo desse valor.
Lista de argumentos.: quando o método recebe parâmetros para sua execução, o tipo e um identificador para cada parâmetro.
Visibilidade: como para atributos, define o quão visível é um método a partir de objetos de outros classes.
Então se tenho uma classe Pessoa, seus atributos são suas caracteristicas como nome, idade, endereco … seus métodos são acordar, dormir, ir para o trabalho … e o objeto ???
O objecto são “pessoas” que tu crias apartir das classes.
As classes são uma espécie de template para tu criares vários objectos. Os vários objectos vão ter sempre os mesmos atributos que estão definidos nas classes e os mesmos métodos (que é o que tu disseste).
Ora se tu criares um objecto chamado João do tipo (classe) Pessoa então o João vai ser um objecto com o atributo nome idade, endereço, e os métodos acrodar, dormir, ir para o trabalho, e se queres saber a idade do João fazes João.nome e referes-te ao nome do João, porque João é um objecto cujos atributos variam, a classe Pessoa os atributos só estão lá para definir os objectos não são nunca alterados.
Bom dia a todos.
É exatamente isto.
Quanto ao objeto e classe, vamos passar a explanar com um objeto do mundo real, por exemplo, um carro, isto porque os objetos inanimados são mais fáceis de se comparar com objetos virtuais.
Todo carro, antes de ser construído, passa por um design, uma planta o qual os engenheiros chamam de projeto de engenharia onde ali define-se quais peças deverá possuir, bem como suas características (atributos), também como o mesmo irá se comportar (Métodos) isto pode ser comparado a Classe, que nada mais um é projeto de engenharia de um objeto.
Após ser construído, todo carro pode ser acrescentado de certos atributos, como por exemplo, básico ou completo, onde o básico só é construído como a planta original o definiu, enquanto que o completo recebe Ar_condicionado, direção hidráulica, vidros e travas elétricas e assim por diante, definindo vários modelos e esta comparação se faz ao Objeto, ou seja, o Objeto que é construído a partir de uma planta original que foi o seu projeto de Engenharia (Classe).
No mundo virtual dizemos que o Objeto é uma instância de uma Classe (Modelo de um Objeto), ou seja, voce pode definir várias instâncias de uma mesma Classe em uma mesma máquina, ou em máquinas diferentes, esta instância de Classe pode ter a sua referência armazenado em uma variável (Instância de Classe ou Objeto propriamente dito). Vamos a exemplo da classe Pessoa.
// Suponhamos que voce já definiu a Classe Pessoa.
Pessoa beth_pe = new Pessoa();
Pessoa abreu = new Pessoa();
Pessoa joao = new Pessoa();
// Acessando um método do Objeto beth_pe
beth_pe.setIdentidade("045.098.890-9");
// Acessando um método do Objeto abreu
abreu.setIndentidade("171.171.171-0");
Repare que o atributo identidade de “beth_pe” recebe um valor diferente de “abreu” através do método setIdentidade, isto é presumindo que a classe pessoa tenha sido pelo menos implementada assim:
public class Pessoa(){
private Integer idade;
private String identidade;
public Integer getIdade(){
return idade;
}
public void setIdade(String idade){
this.idade = idade;
}
public String getIdentidade(){
return identidade;
}
public void setIdentidade(String identidade){
this.identidade = identidade;
}
}
Repare também que as instâncias de Classe (Objeto) “beth_pe” e “abreu” tem os mesmos atributos e comportamentos definidos no seu projeto de engenharia (Classe), porém se voce quiser definir acrescentar atributos e comportamentos a mais para “abreu”, neste caso voce teria que redefinir o projeto de engenharia (Classe) original :?: Sim ou não :?:
Não exatamente o projeto original (Classe original), porque se não voce também modificaria o Objeto “beth_pe” e neste caso, voce só quer acrescentar alguns atributos para “abreu”, o que fazer então :?:
Simples, criar uma nova classe Abreu que herde os atributos e métodos da classe pessoa, assim:
public class Abreu extends Pessoa {
private String hora_ler_biblia;
public String getHora_ler_biblia(){
return hora_ler_biblia;
}
public void setHora_ler_Biblia(String hora_ler_biblia){
this.hora_ler_biblia = hora_ler_biblia;
}
}
O que acabamos de definir acima, chamamos de “Polimorfismo”, ou seja, são diferentes formas de Objetos que herdam o mesmo tipo de classe se comportarem.
Pessoa beth_pe = new Pessoa();
Abreu abreu = new Abreu();
// Acessando métodos de abreu
abreu.setIndentidade("171.171.171-0");
abreu.setIdade(52);
abreu.setHora_ler_biblia("14:00");
// Acessando métodos de beth_pe;
beth_pe.setIdentidade("045.098.890-9");
beth_pe.setIdade(25);
// Oops, aqui vai dar erro, pois este método não foi definido na classe Pessoa
beth_pe.setHora_ler_biblia("14:00");
Gostaria que voce observasse também que todos os atributos foram definidos com o modificador private, isto é, com visibilidade privada dentro da classe, e o seu acesso se deu atraves dos métodos get… e set…, isto nós chamamos de encapsulamento. Isto se deve ao fato de que quando voce mexe com atributos de um objeto, ele deve ser preservado especificamente a classe, por ser tratar das características de um objeto.
Bom, espero ter dado a voce uma ampla explanação sobre Classe, Objeto, e aproveitando o ensejo, sobre Herança e Encapsulamento também.
comece aprendendo java pelo Alo mundo, dps uma calculadora e assim vai ^^
Sim… em partes você acerto, dentro da sua classe Pessoa, os atributos são os que você sitou e os métodos também, são as ações da mesma, e o Objeto seria a Classe Pessoa sendo instanciada, você fazedo uma instancia da mesma, estará criando um objeto do tipo pessoa…
Exemplo.
Pessoa Anderson = new Pessoa()
O Objeto Anderson é uma instancia da classe Pessoa,ele possui todas as características da classe Pessoa (Atributos ), e também suas ações (Métodos)
Acho que agora entendi! Se por exemplo gero uma CLASSE “Cachorro”
os campos que definem as caracteristicas do cachorro serão os ATRIBUTOS, como nome, idade, peso, raça.
Seriam os MÉTODOS da classe cachorro, as ações que o cachorro pode ter, Morder, Comer, Latir.
Porém, quando eu me refiro a um cachorro específico: nome: Bob, idade: 2 anos, peso: 8 kg, raça: pitbull. Nesse Momento eu estou tratando o OBJETO da classe cachorro.
[quote=Beth_pe]Acho que agora entendi! Se por exemplo gero uma CLASSE “Cachorro”
os campos que definem as caracteristicas do cachorro serão os ATRIBUTOS, como nome, idade, peso, raça.
Seriam os MÉTODOS da classe cachorro, as ações que o cachorro pode ter, Morder, Comer, Latir.
Porém, quando eu me refiro a um cachorro específico: nome: Bob, idade: 2 anos, peso: 8 kg, raça: pitbull. Nesse Momento eu estou tratando o OBJETO da classe cachorro.[/quote]
Sim cara, é isso ai,entendeu tudo certinho!!!
[quote=Beth_pe]Olá!!!
Estou tentando colocar JAVA na minha cabeça.
Favor, alguém pode me ajudar no primeiro contato das definições de classe, objeto, atributo e métodos? Pois, não consigo entender esta teoria. [/quote]
Eu também estou aprendendo Java e estou muito no comesso.
Recomendo comprar o livro “Java como programar” da Deitel.
[quote=DarthVictor][quote=Beth_pe]Olá!!!
Estou tentando colocar JAVA na minha cabeça.
Favor, alguém pode me ajudar no primeiro contato das definições de classe, objeto, atributo e métodos? Pois, não consigo entender esta teoria. [/quote]
Eu também estou aprendendo Java e estou muito no comesso.
Recomendo comprar o livro “Java como programar” da Deitel.[/quote]
Não recomendo tanto do Deitel não… Deixo ele como ultima opção!
Baixe as apostilas do Caelum ou pegue o livro Java, Use a Cabeça
[quote=pedroroxd][quote=DarthVictor][quote=Beth_pe]Olá!!!
Estou tentando colocar JAVA na minha cabeça.
Favor, alguém pode me ajudar no primeiro contato das definições de classe, objeto, atributo e métodos? Pois, não consigo entender esta teoria. [/quote]
Eu também estou aprendendo Java e estou muito no comesso.
Recomendo comprar o livro “Java como programar” da Deitel.[/quote]
Não recomendo tanto do Deitel não… Deixo ele como ultima opção!
Baixe as apostilas do Caelum ou pegue o livro Java, Use a Cabeça[/quote]
Use a cabeça é mais fácil que o da deitel, mais gosto de desafios.
Só li 10% dele(110 paginas)
NOTA: Estou com a primeira edição dele.
Não sei não cara…eu também estou começando e o fiz pelo Deitel. Tenho ele aqui, mas só lerei quando a dupla “Head First e Apostila Caelum” estiverem terminadas…Digo isso pq eu tentei começar pelo Deitel…
Pressa é inimiga da perfeição, mas com essa dupla aí estou conseguindo aprender mais rápido!
Fica aí a dica!
abs
[size=12] Boa noite!!!
Classe.: Uma classe é o agrupamento de objetos com a mesma estrutura de dados (definida
pelos atributos ou propriedades) e comportamento (operações), ou seja, classe são as descrições dos objetos!
Objeto.: De maneira geral, Objeto é uma classe sendo estanciada!! De maneira mais Conceitual, um objeto é algo distinguível que contém atributos (ou propriedades) e possui um comportamento. Cada objeto tem uma identidade e é distinguível de outro mesmo que seus
atributos sejam idênticos.
Atributo.: O conjunto de propriedades da classe!!! alguns autores preferem distinguir o mesmo como Variável…
Métodos.: O conjunto de funcionalidades da classe. Para cada método, especifica-se sua assinatura, composta por:
Nome: um identificador para o método.
Tipo: quando o método tem um valor de retorno, o tipo desse valor.
Lista de argumentos.: quando o método recebe parâmetros para sua execução, o tipo e um identificador para cada parâmetro.
Visibilidade: como para atributos, define o quão visível é um método a partir de objetos de outros classes.[/size]
[size=9]This message was edited 6 times. Last update was at 21/04/2010[/size]