If the java.awt.Graphics class is abstract then how can methods such as this.getGraphics() return a Graphics object ?