Duvida basica

14 respostas
N

Tenho uma pergunta da fac.
Num programa em Java, quantas classes podem ter definido o método:
public static void main(String[] args);

Se alguem me podesse ajudar agradecia, ja andei a ver na net e em livros…

14 Respostas

clodoaldoaleixo

Até onde eu sei, em uma aplicação Java só pode haver uma definição do método main.

Esse método é o ponto de partida, o inicio da aplicação.

afdestro

pode…
vc pode ter varios metodos main em seu projeto…
porem apenas um por classe… isso é obvio né…
não pode ter nois metodos iguais na mesma classe…
;D

G

Acho q naum importa … jah q vc declara qual classe vc vai chamar. seria um main por classe e o numero de classes com main acho q naum importa!

clodoaldoaleixo

Depende do contexto, se ele tiver uma aplicação com N classes, ele só pode ter o método main em uma delas oras…

Podem ter 987 classes no diretório do cara, mas só pode haver 1 método main, ou não?

Agora se forem 987 aplicações diferentes, ai sim cada uma terá seu método main.

M

Alguém saberia me informar o pq que uma ArrayList é mais rápida na pesquisa do que sua concorrrente LinkedList

E

Do ponto de vista de arquitetura de aplicação…Ter mais de um método main além de não ter sentido é meio ridículo…

Mas a pergunta é “quantos métodos main PODE ter”…Bem, esse pode, para mim, significa, quantos métodos main é possível ter no mesmo pacote de classes…Bem, podemos ter tantos métodos main qto classes no mesmo pacote…

N classes, N métodos main possíveis, um por classe, como o colega acima falou…

E

Pq a ArrayList utiliza arrays internamente, ou seja, é uma estrutura indexada, a área de memória é acessada instantaneamente (quase), pois vai direto na área apontada pelo índice…Já a LinkedList, como o nome denuncia, é implementada sobre uma estrutura encadeada…Ou seja, para acessar o décimo elemento da lista, é preciso percorrer os nove anteriores (na ArrayList vai direto ao décimo)…

T

ncjweb2007:
Tenho uma pergunta da fac.
Num programa em Java, quantas classes podem ter definido o método:
public static void main(String[] args);

  • Todas.
    Normalmente você faz isso para incluir um mini-programa de teste juntamente com sua classe.
    Cabe à pessoa que vai disponibilizar o programa dizer qual é a “classe principal de seu programa”.
rodrigo_salla

Você pode colocar o metodo main em quantas classes quiser, para testes, porém o main é o ponto de partida de um programa, é através dela que você starta o programa a vai, chamando, usando as demais classes conforme escrito nela, procure colocar somente na classe que você executa.
Rodrigo

M

eclipso

vlw mesmo cara !!!

M

Pq é preferível utilizar ITERATOR p/ percorrer uma lista ?

Mantu

Acho melhor você abrir um novo tópico para cada nova pergunta, pois além de compartilhar sua duvida com os demais, você terá um número maior de respostas.

LPJava

ncjweb2007:
Tenho uma pergunta da fac.
Num programa em Java, quantas classes podem ter definido o método:
public static void main(String[] args);

Se alguem me podesse ajudar agradecia, ja andei a ver na net e em livros…

sim, vc so pode ter apenas u metodo main em uma class, pois é o metodo principal… o chamadorrr!! ele é o coração do seu programa…

Mantu
TODA E QUALQUER CLASSE, Até mesmo classes internas ou classes no mesmo arquivo que outras classes, podem ter um método com a assinatura
public static void main(String[])
Para encerrar a discussão: Arquivo A.java
/**
 * @author Mantu
 */
package help.guj.ncjweb2007;

public class A {
	public static void main(String[] args) {
		System.out.println("A");
		E.main(args);
	}
}

class E{
	public static void main(String[] args) {
		System.out.println("E");
		I.main(args);
	}
}
Arquivo I.java
/**
 * @author Mantu
 */
package help.guj.ncjweb2007;

public class I {
	public static void main(String[] args) {
		System.out.println("I");
		O.main(args);
	}
	
	public static class O{
		public static void main(String[] args) {
			System.out.println("O");
			U.main(args);
		}
	}
}
Arquivo U.java
/**
 * @author Mantu
 */
package help.guj.ncjweb2007;

public class I {
	public static void main(String[] args) {
		System.out.println("I");
		O.main(args);
	}
	
	public static class O{
		public static void main(String[] args) {
			System.out.println("O");
			U.main(args);
		}
	}
}
Pra quem utiliza eclipse, clique com o direito no pacote help.guj.ncjweb2007 e escolha "Run As > Java Application". Na janelinha que se segue, escolha à vontade qual classe que vai ser o "coração" do seu programa.... Pra quem tá em linha de comando, baixe o anexo, descompacte em alguma pasta do seu classpath e escolha um dos bat's para executar Divirtam-se!
Criado 26 de dezembro de 2006
Ultima resposta 27 de dez. de 2006
Respostas 14
Participantes 10