java override field in abstract class