Código:
v = new JFrame("Probando");
v.setDefaultCloseOperation(EXIT_ON_CLOSE);
v.setSize(500,500);
v.setBackground(SystemColor.BLUE);
b = new JButton("Boton");
b.setSize(100,100);
v.getContentPane().add(b);
v.setVisible(true);
y sale todo el formulario un boton. pero si le pongo pack() me sale el boton de la medida correcta, y al agrandar el formulario se pone el boton igual de grande y me tapa entero.