Exercício Resolvido em Java com Interface Gráfica
    1 //layout para alinhamento dos componentes
    2 import java.awt.FlowLayout;
    3 //janela
    4 import javax.swing.JFrame;
    5 //caixa de seleção
    6 import javax.swing.JComboBox;
    7 //inserção de texto e/ou imagem
    8 import javax.swing.JLabel;
    9 //painel
   10 import javax.swing.JPanel;
   11 //campo para inserção de valores ou caracteres
   12 import javax.swing.JTextField;
   13 //evento do JComboBox para ouvir o evento
   14 import java.awt.event.ItemListener;
   15 //Evento do JComboBox de executar uma ação do evento que foi ouvido(ativado)
   16 import java.awt.event.ItemEvent;
   17 
   18 //Criação da classe EX12 extendendo a classe JFrame que foi importada
   19 public class Ex12 extends JFrame
   20 {
   21    //declaração de um array de 2 colunas já com seus valores configurados
   22    private String tipo[]={"Física","Jurídica"};
   23    //criação de uma variável inteira de nome valor
   24    private int valor;
   25 
   26    //criação do FlowLayout que alinha componentes da esquerda para a direita.
   27    private FlowLayout flowLayout = new FlowLayout();
   28    //criação de um painel
   29    private JPanel panel = new JPanel();
   30    //Criação das label's
   31    private JLabel Lcargo = new JLabel("Tipo de Pessoa:");
   32    private JLabel Lcpf_cnpj = new JLabel("CPF:");
   33    //criação do campo
   34    private JTextField Fcpf_cnpj = new JTextField("", 5);
   35    //criação da caixa de seleção anexando o valor do array cargos
   36    private JComboBox escolhas = new JComboBox(tipo);
   37 
   38    //construtor de Ex12
   39    public Ex12()
   40    {
   41       //título  da janela
   42       super("Exemplo de uso com JComboBox");
   43       //alinhamento do frame com o uso do objeto flowLayout
   44       super.setLayout(flowLayout);
   45       //tamanho da janela
   46       setSize(300, 100);
   47       //inclusão dos componentes de maximinizar, miniminizar e fechar
   48       setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   49 
   50       //exibe 2 linhas da caixa de seleção ao clicá-la
   51       escolhas.setMaximumRowCount(2);
   52       //adiciona os componentes ao painel
   53       panel.add(Lcargo);
   54       panel.add(escolhas);
   55       panel.add(Lcpf_cnpj);
   56       panel.add(Fcpf_cnpj);
   57 
   58       //adiciona a janela principal
   59       super.add(panel);
   60 
   61        //responsável por tratar os eventos do JComboBox
   62        escolhas.addItemListener(
   63           new ItemListener() //classe interna anônima
   64           {
   65              //Verifica se ouve mudanças no JComboBox
   66              public void itemStateChanged(ItemEvent event)
   67              {
   68                 //Se algo foi selecionado, faça
   69                 if(event.getStateChange()==ItemEvent.SELECTED)
   70                 {
   71                    //Pegue o valor(posição) que foi selecionado
   72                    valor = escolhas.getSelectedIndex();
   73                    //se valor for 0, ou seja, se for selecionado Física; faça
   74                    if(valor==0)
   75                       //reconfigure a label com o nome CPF
   76                       Lcpf_cnpj.setText("CPF:");
   77                    else
   78                       //do contrário reconfigure como CNPJ
   79                       Lcpf_cnpj.setText("CNPJ:");
   80                 }
   81              }
   82          }
   83       );//fim da classe interna anônima
   84    }//Fim do construtor EX12 sem argumentos
   85 }//Fim da classe Ex12
    1 //Main - Nome da classe
    2 public class Main
    3 {
    4    //Comando principal para execução do programa
    5    public static void main(String[] args)
    6    {
    7       //Criação de um objeto ex da classe Ex1
    8       Ex12 ex = new Ex12();
    9       //posição da tela ao abri-la
   10       ex.setLocation(400,300);
   11       //tornando a tela visível
   12       ex.setVisible(true);
   13    }
   14 }