Construtor, encapsulamento, parâmetro, argumento

Olá pessoal! Sou nova no forum e pra variar já estou entrando pra pedir ajuda, que na verdade se trata´m de dúvidas no código, ok?

[code]
[b]public class Cd
{
private String artista;
private String genero;
private double valor;
private String situacao;

public Cd(String a, String g, double v, String s)
{
    artista = a;
    genero = g;
    valor = v;
    situacao = s;
}

public String getArtista() {
    return artista;
}

public void setArtista(String artista) {
    this.artista = artista;
}

public String getGenero() {
    return genero;
}

public void setGenero(String genero) {
    this.genero = genero;
}

public double getValor() {
    return valor;
}

public void setValor(double valor) {
    this.valor = valor;
}

public String getSituacao() {
    return situacao;
}

public void setSituacao(String situacao) {
    this.situacao = situacao;
}
public String toString()
{
    return("\nArtista: "+artista+"\nGenero: "+genero+"\nValor: "+valor+"\nSituação: "+situacao+"\n");
}

}[/b]

Bem, tenho dúvidas onde localizar passagem de parâmetros, argumento, construtor e encapsulamento. Quanto a encapsulamento, só queria que me confirmassem se estão em:

private String artista;
    private String genero;
    private double valor;
    private String situacao;

public String getArtista()
public void setArtista(String artista)
public String getGenero()
public void setGenero(String genero)
public double getValor()
public void setValor(double valor)
public String getSituacao()
public void setSituacao(String situacao)

Quanto ao construtor, acredito estar em:

[code]
public Cd(String a, String g, double v, String s)

Agora parâmetro e argumento são minha principais dúvidas, aliás, acho que parametro está na mesma linha de construtor, ou será que não?

Bem, de qualquer forma espero que tenham entendido minha dúvida e que eu tenha conseguido alguém pra me ajudar, ok?

Valeu!

Terumi,

esta indo bem…

olha só…

parametros são os atributos ou variaveis que voce passa para o método que no seu caso esta passando para o construtor da classe CD

public Cd(String a, String g, double v, String s)

os atributos a, g, v e s são os parametros que voce esta passando para o construtor da classe.

Qualquer coisa pode falar, no que puder, vou ajudar.

Se voce tiver como, veja os artigos para iniciantes no item -Artigos / Tutoriais, são bem legais e explicativos
Tem um livro muito bom também que é:
Java Como Programar
autor: Deitel e Deitel (são irmaos só na lembro os nomes deles, mas todos os conhece pelo sobrenome)
é um livro ótimo. A versão 4 (um amarelo) é perfeito pra começar.

Abraços

Cara…

Saca só , no caso de material de apoio além do livro que o nosso amigo citou acima, tem um material no site,
www.argonavis.com.br/downloads

que explica fácil fácil como funciona esses termos, é uma abordagem prática muito interessante para quem tá iniciando.
Eu utilizei e acho um material de qualidade…

Até a próxima

cara para responder esse seu teu topico dar uma lida aqui:

http://www.guj.com.br/posts/list/50115.java

Parâmetro é a mesma coisa que argumento, mas é a palavra que vc não deve usar. Prefira usar argumento. (A diferença é tão sutil que vou deixar de lado a explicação existencial da diferença)

Construtor é aquilo que a JVM invoca ao construir o objeto. É quase que um método, mas com propriedades especiais. Sim, no caso é

public Cd(String a, String g, double v, String s)

A diferença entre a implementação de um construtor e um método é que o método indica um retorno, mesmo quando ele é void. Construtores não têm retorno e tb não são herdados.

Encapsulamento é o nome de : 1) um principio de boa programação OO. 2) a forma de implementar 1) no código.
O principio diz que quem usa uma classe não deve ter acesso ao estado da classe nem a como ela funciona. Apenas deve ter acesso ao resultado do estado + funcionamento.
No caso simples do estado, encapsular significa que os atributos não devem ficar visiveis publicamente e devem tanto quanto possivel, serem privados, para que ninguem os acesse excepto a própria classe. Mas se os attributos são privados não ha como acessá-los. E por isso é conviniente ter métodos públicos, que acessam internamente os dados privados. Repare que isto não é um verdadeiro encapsulamento, pois não estamos privando o usuário da classe de obter os dados do seu estado (e até manipulá-lo). O que estamos fazendo é apenas esconder de que forma os dados são guardados. No futuro, poderíamos querer usar outras formas de guardar os dados, mas sem os métodos estaríamos impedidos de fazer isso pois os atributos estariam lá para sempre.
Usar acessores e modificadores é uma forma de encapsular o acesso aos dados , mas não os dados em si. contudo vc está certa ao afirmar que eles , junto com os attributos privados representam uma forma de encapsulamento presente na sua classe.

“Brigadão” pelas explicações e pelas dicas de material, agora vou estudar e se tiver alguma dúvida volto pra pedir socorro.

Tchau galera.

Eu preciso fazer um programa que pergunte o nome e quatro notas de uma pessoa , no final calcule a média ,encaixe numa tabela e diga se foi aprovado.
O nome tem q ter no minimo 1 e no maximo 20 caracteres , se o nome for inválido(o nº de caracteres for maior ou menor que o definido, espaço em branco ou com nºs) tem q dar mensagem d erro e pedir o nome de novo;
A nota tem q ser um nº inteiro entre 1 e 10, se a nota for inválida(nº fracionário, letra ou qualquer coisa que não seja nº) tem q dar mensagem d erro e pedir a nota de novo;
A tabela de avaliação é:
de 0 a 2 - péssimo;
de 3 a 4 - ruim;
de 5 a 6 - regular;
de 7 a 8 - bom;

Bom, é isso, se alguem puder por favor me ajude, OBRIGADO!
de 9 a 10 - excelente;

Paulo.

Tente fazer seu porgrama, ok? Caso tenha dúvidas durante a criação mande seu código pedindo ajuda e especificando seu problema, ok? Antes de mais nada, um programador só consegue tirar uma dúvida se for tentando e pedindo ajuda, ok?

Até a próxima.

[quote=Paulo_SP] Eu preciso fazer um programa que pergunte o nome e quatro notas de uma pessoa , no final calcule a média ,encaixe numa tabela e diga se foi aprovado.
O nome tem q ter no minimo 1 e no maximo 20 caracteres , se o nome for inválido(o nº de caracteres for maior ou menor que o definido, espaço em branco ou com nºs) tem q dar mensagem d erro e pedir o nome de novo;
A nota tem q ser um nº inteiro entre 1 e 10, se a nota for inválida(nº fracionário, letra ou qualquer coisa que não seja nº) tem q dar mensagem d erro e pedir a nota de novo;
A tabela de avaliação é:
de 0 a 2 - péssimo;
de 3 a 4 - ruim;
de 5 a 6 - regular;
de 7 a 8 - bom;

Bom, é isso, se alguem puder por favor me ajude, OBRIGADO!
de 9 a 10 - excelente;[/quote]

aceito apenas american express…