Classes e Objetos

Olá! Estou começando a aprender java, e estou no capitulo 3 do livro do Java como programar. Mas, eu não estou consiguindo compreender sobre os métodos GradeBook. Será se poderia me ajudar?

[code]// Fig. 3.2: GradeBookTest.Java
// Cria um objeto GradeBook e chama seu método displayMessage.

public class GradeBookTest
{
// método main inicia a execução de programa
public static void main( String args[] )
{
// cria um objeto GradeBook e o atribui a myGradeBook
GradeBook myGradeBook = new GradeBook();

  // chama método displayMessage de myGradeBook
  myGradeBook.displayMessage();

} // fim de main

} // fim da classe GradeBookTest[/code]

[code]public class GradeBook
{
// exibe uma mensagem de boas-vindas para o usuário GradeBook
public void displayMessage()
{
System.out.println( “Welcome to the Grade Book!” );
} // termina o método displayMessage

} // fim da classe GradeBook[/code]

Poderia me ajudar a entender o código ?

Vamos assimilar “COMPARAR SÓ”’, uma classe com uma estrutura de uma linguagem estrutural que acredito que você já compreenda, que no caso no C seria o struct e no pascal o object. Dentro dessa estrutura você pode definir algumas variaveis e funções certo?

Então é isso que esta acontecendo, o metodo main que no caso se aplica a função main em C ou o begin em pascal, é o ponto de partida do seu programa.

No corpo dessa função ou seja falando em OO, metodo, você cria uma variavel chamada myGradeBook que é do tipo da classe que você fez o prototipo na mesma analogia ao pascal, uma variavel de uma estrutura como record ou object.

Esse mesma variavel que em OO dizemos que é um objeto invova um metodo ou seja uma procedimento em pascal, chamado displayMessage() que tem essa linha

System.out.println( “Welcome to the Grade Book!” );

Essa linha se é o cout ou o writeln , ou seja mostra a string passada como argumento na tela de console.

Olá! desculpe a minha ignorância. Mas, eu não consigui entender.

Que isso sem crise, faz assim, me explique o que você já entende ai podemos te ajudar melhor.

Sim. Então eu não estou consiguindo compreender esse "GradeBook myGradeBook new GradeBook();

e esse "myGradeBook.displayMessage(). Eu chamei o método é isso ?

GradeBook myGradeBook; <== Assim você declara um objeto.

myGradeBook = new GradeBook (); Assim você cria efetivamente o objeto http://pt.wikipedia.org/wiki/Alocação_de_memória

No exmplo do livro ele esta fazendo tudo de uma vez em uma linha só

GradeBook myGradeBook = new GradeBook();

e sim

myGradeBook.displayMessage();

Esta chamando o metodo.