java why make inner class static