support interface type. fix field visibility
sort fields and methods