Graphical user interfaces (GUIs) present information to users visually using components like buttons, text fields, labels etc. Java provides the Abstract Window Toolkit (AWT) and Swing toolkit for building GUIs. Some key GUI components in Java include JButton for buttons, JTextField for text fields, JLabel for labels, JRadioButton for radio buttons, JCheckBox for checkboxes, JComboBox for drop-down lists, JTextArea for multi-line text, and JFrame for windows. JFrame methods like add(), setVisible(), setLocation(), setSize() are used to control frames. Dialog boxes are also used for input/output using the JOptionPane class.