Este codigo por ejemplo
Código PHP:
import java.awt.event.ActionEvent;
import java.net.*;
import java.awt.*;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import org.omg.CORBA.PRIVATE_MEMBER;
//CLASE QUE CREA NUMEROS PRIMOS
//PARA USAR THREADS NECESITAMOS LA INTERFACE RUNNABLE
public class Threads extends JFrame implements Runnable, ActionListener
{
Thread ir;
JLabel etiquetaCuantos = new JLabel("Cantidad: ");
JTextField cuantos= new JTextField("250", 10);
JButton botonmostrar = new JButton("Mostrar Primos");
JTextArea primos = new JTextArea(8, 40);
public Threads() {
super("Mostrar Numeros Primos");
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
BorderLayout diseno = new BorderLayout();
setLayout(diseno);
botonmostrar.addActionListener(this);
//CREAMOS PANELES
//AÑADIMOS COMPONENTES AL PANEL
JPanel panelsuperior = new JPanel();
panelsuperior.add(etiquetaCuantos);
panelsuperior.add(cuantos);
panelsuperior.add(botonmostrar);
//AÑADIMOS PANEL
add(panelsuperior, BorderLayout.NORTH);
//PANEL INFERIOR
//MUESTRA LOS NUMEROS EN DIFERENTES LINEAS CUANDO LLEGUEN AL FINAL
primos.setLineWrap(true);
//JPanel panelinferior = new JPanel();
//BARRA DE SCROLL
JScrollPane panelscroll = new JScrollPane(primos);
// panelinferior.add(panelscroll);
// panelinferior.add(primos);
add(panelscroll, BorderLayout.CENTER);
}
public void actionPerformed(ActionEvent e) {
botonmostrar.setEnabled(false);
if (ir==null)
{ir = new Thread(this);
ir.start();
}
}
public void run() {
int cantidad = Integer.parseInt(cuantos.getText());
int numPrimos = 0;
//candidato = numero que puede ser primo
int candidato = 2;
primos.append("Primeros "+ cantidad + " numeros primos\n ");
while (numPrimos < cantidad)
{ if (esPrimo(candidato))
{primos.append(candidato + ", ");
numPrimos++;
}
candidato++;
}
}
public static boolean esPrimo(int comprobarnumero)
{double raiz = Math.sqrt(comprobarnumero);
for (int i = 2; i <=raiz; i++) {
if (comprobarnumero % i ==0)
{return false;}
}
return true;
}
public static void main(String[] args) {
Threads marco = new Threads();
marco.setVisible(true);
}
}
¿cual es la forma correcta de programar?¿Cual os parece mas facil por partes o el codigo entero?....y por cierto en cuanto al codigo que he puesto....¿Como lo veis para lo que realmente hace?¿se podria hacer de algún modo mas simple o creeis que lo ha complicado mucho?(el codigo no es mio, es de un tuto). Nada mas.
Gracias.