Ir ao conteúdo
  • Cadastre-se

Dúvida Exercício Static (Iniciante)


djebs

Posts recomendados

Galera, tem um exercício bem bobinho, mas não estou entendendo o que tem que fazer. O enunciado é este: 

 

Criar em uma classe chamada Aula4Exercicio1

e um método não estático chamado
imprimirNome que recebe dois argumentos:
● nome : nome da pessoa
● sobrenome : complemento do nome
● Criar nessa classe um método main para iniciar
o programa e imprimir os seguintes valores:
● Airton Senna
● Nelson Piquet
● Rubinho Barriquelo

 

Link para o comentário
Compartilhar em outros sites

  • Moderador

@djebs

 

Não podemos fazer seu exercício.. mas pelo menos posso te dar um pontapé inicial, mas a lógica é com você.

public class nomeDaClasse {       declaração de variáveis              public tipo seuMétodo(argumento 1, argumento 2){              Lógica       }   public static void main (String[] args) {            chamar seu método    }}

 É só um esqueleto. mas com isso é possível você fazer o resto, 

Qualquer 

 

att,

 

Dif

Link para o comentário
Compartilhar em outros sites

  • Moderador

Então, vamos por partes.

 

Primeiramente você precisa entender quais são os tipos de métodos existentes no java.

 

são eles:

 

  • estático (static)
  • não-estático ( tipo + nome do método)
  • vazio (void)

Os métodos estáticos e vazio, Não necessitam de um retorno (return).

Já o método não estático, precisa de um retorno, que é o caso do enunciado, que deve ser um método não-estático.

 

Com base nisso.. podemos declarar o método da seguinte forma:

public tipo método(argumento){   return argumento;} 

exemplo prático:

public int setarIdade(int idade){  return "Eu tenho " + idade + " anos";}

Agora para chamar este método, obrigatoriamente você precisa usar o conceito de orientação a objetos e instanciar um objeto da sua classe.

 

exemplo:

//Instancia um objeto da classeNomeDaClasse objeto = new NomeDaClasse();//Chama o método não estático da classeobjeto.método(argumento)

Devo lembra-lo que a instância e a chamada devem estar dentro do método main.

 

Agora sobre sua dúvida de vários nomes em uma string só... você precisará lidar com vetores(array)  ou com arrayList.e  laços de loop while(enquanto), ou um for. 

 

Outra coisa importante,  se você quer entrar com os dados, dê uma estudada na classe Scanner do java.

 

O mais longe que posso te dizer agora é isso..   com base no que expliquei, tente implementar o método imprimirNome

Link para o comentário
Compartilhar em outros sites

são eles:

 

  • estático (static)
  • não-estático ( tipo + nome do método)
  • vazio (void)

Os métodos estáticos e vazio, Não necessitam de um retorno (return).

 

Acho que houve um pequeno equívoco aqui.

 

O modificador static ao ser aplicado a uma função membro (método), define que essa função não estará vinculada a um objeto em particular. Ao ser usado com variáveis membro (atributos), essas passam a ser compartilhadas entre os objetos da mesma classe.

 

Você pode ter tanto uma função membro estática void (portanto sem retorno):

public static void foo(int a, int 

quanto uma função estática com a necessidade de retorno de valor:

public static int foo(int a, int 

Isso vale para C++ / Java. No caso do C++, o compilador emite um warning caso uma função não-void deixe de retornar um valor.

 

 

 

NW

Link para o comentário
Compartilhar em outros sites

Galera, acho que entendi mais ou menos agora. Só não estou entendendo o que eu passo como argumento la em cima.

public class Aula4Exercicio1 {public String nome;public String sobrenome;	public String imprimirnome (String nome){	return nome = "Airton Senna";			}					public static void main(String[] arg) {	Aula4Exercicio1 no = new Aula4Exercicio1();	no.imprimirnome();//o que eu passo como argumento aqui?//	}}
Link para o comentário
Compartilhar em outros sites

  • Moderador

@djebs,

 

Veja, que no exercício pede para que você passe argumentos. certo? 

A sua declaração de método em partes está correta(para esse caso).

 

O que sugiro é: retirar a String  "Airton Sena". pois o nome será o argumento passado.

 

Então ficaria assim:

public String imprimirnome (String nome){    return nome;		}

E no seu main, o argumento passado é:

no.imprimirnome("Airton Senna");

No seu exercício, pede dois argumentos. Então o que deveria ser feito ali?  lembre do esqueleto que postei no #2 mais acima.

Link para o comentário
Compartilhar em outros sites

Fica assim?

public class Aula4Exercicio1 {public String nome;public String sobrenome;	public String imprimirnome (String nome){		return nome;	}					public static void main(String[] arg) {	Aula4Exercicio1 no = new Aula4Exercicio1();	System.out.println(no.imprimirnome("Airton Senna")) ;    	}
Link para o comentário
Compartilhar em outros sites

  • Moderador

Amigo, volto a repetir, No exemplo do post #02  das linhas 4 a 7.

 

Seu exercício pede dois argumentos, você conseguiu por um.

 

Logo:

public String imprimirnome (String nome, String sobrenome){    return nome + " " + sobrenome;}System.out.print(no.imprimirnome("Airton","Senna"));

De um jeito simples, se quer mostrar 3 nomes, basta invocar 3 vezes o método.

 

Agora se quiser de um jeito mais dinâmico, teria que implementar a entrada de dados com a classe Scanner,  e usar um laço de for, ou while para a entrada de dados.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...