Hola, bueno acabo de probar el código desde mi compilador en Linux, más exactamente openSUSE 11.4 y todo ha ido correctamente excepción de algunos warns que tomaré más adelante, es por esto que te sugiero que verifices si todo está correctamente bien instalado el JDK y el JRE, si ambos están es sus versiones más recientes, para evitar cualquier complicación, además de verificar si los path están correctamente.
Por otro lado el siguiente método es obsoleto, lo que hará que javac arroje una advertencia:
show();
Y en su lugar debería usarse:
setVisible(true);
Ahora en la clase que contiene a main, también se arrojará una advertencia debido a que simplemente se crea un objeto pero nada se hace con este, por lo que sugiero que sea cambiado de la siguiente forma:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class MyFrame
extends JFrame {
MyFrame(){
setLayout(null);
setSize(410, 220);
setResizable(false);
setBackground
(Color.
red);
input.setBounds(10,10,280,35);
add(input);
boton.setBounds(300,10,100,35);
}
});
add(boton);
salir.setBounds(300,150,100,35);
}
});
add(salir);
}
});
}
}
public class Programa {
public static void main
(String[] args
){ MyFrame f = new MyFrame();
f.setDefaultCloseOperation(EXIT_ON_CLOSE);
f.setVisible(true);
}
}
Claro eso en está ocasión si es solo para eso para lo que vas a usar el frame, ya seguramente en futuras ocasiones y distintos problemas lo uses como más te convenga.
Pero como se suele decir un warning es un error permitido por el compilador, claro que es muy posible que en java te encuentres con que no siempre es así. Aunque en mi opinión entre menos warnings mejor. Para ver todas las warnings que pueda arrojar tu programa con el flag -Xlint como se haria en C/C++ con -Wall o -Wextra.
javac -Xlint Programa.java
Al menos eso es lo que veo, y a mi me compila perfecto, pero imagino que alguien más puede tener una observación más precisa a lo que planteo.
Saludos