Teste de um iniciante

5 respostas
vinians

Amigos, estou testando meus pequenos e iniciais conhecimentos em java e fiz esse minusculo programa que não está rodando:

package testejava;

import java.io.*;
import javax.swing.JOptionPane;

/**
 *
 * @author Vinicius
 */
public class Teste
{
	public void teste()
	{
		System.out.println("Im am a constructor");
		runza();
	}
	private void runza()
	{
		String str = JOptionPane.showInputDialog("What's your name");
		JOptionPane.showMessageDialog(null, "Your name is:" + str);
	}
	
	public static void main(String args[])
	{
		Teste tst = new Teste();
	}
}

Ele compila mas quando executo não acontece nada, nem erro nem nada.
Eu tinha feito o mesmo programa tudo no método main e tinha funcionado. Quando criei o construtor e chamei a função “runza()” parou de funcionar.
Obrigado!

5 Respostas

brunorota

Na vdd vc nao criou um construtor

Você criou apenas um método teste

o codigo do construtor deve ser assim

public Teste  
    {  
        System.out.println("Im am a constructor");  
        runza();  
    }

Falows

vinians

brunorota:
Na vdd vc nao criou um construtor

Você criou apenas um método teste

o codigo do construtor deve ser assim

public Teste  
    {  
        System.out.println("Im am a constructor");  
        runza();  
    }

Falows


Caraca amigão, era devido ao void!!! Nussa que vacilo, como diz uma pessoa em um fórum “Construtor NÃO é Método” hehhe
Valeu!

brunorota

Não só devido ao void

O nome do construtor deve ser igual ao nome da classe, e tem que respeitar letras maiuculas e minusculas

Mais eh isso ae

FAlowss

williamdasflores

vinians,

blz cara??

No primeiro caso, como vc não tinha o Construtor você teria que chamar o método teste no método main:

public static void main(String args[]) { Teste tst = new Teste(); tst.teste(); }

ViniGodoy

Fala xará. Vai aí o código corrigido e com comentários.

package testejava;

import java.io.*;
import javax.swing.JOptionPane;

/**
 *
 * @author Vinicius
 */
public class Teste
{
        //O constructor tem o mesmo nome da classe, e não tem tipo de retorno, nem mesmo "void".
	public Teste()
	{
		System.out.println("Im am a constructor");
		//É uma má prática chamar um método que não seja final no construtor.
	}
	private void runza()
	{
		String str = JOptionPane.showInputDialog("What's your name");
		JOptionPane.showMessageDialog(null, "Your name is:" + str);
	}
	
	public static void main(String args[])
	{
		Teste tst = new Teste();
                tst.runza();
	}
}
Criado 9 de maio de 2011
Ultima resposta 9 de mai. de 2011
Respostas 5
Participantes 4