Если у вас есть иерархия классов, такая:
public class EditText {
public CharSequence getText() {...}
}
public class TextInputEditText extends EditText { }
public class BootstrapEditText extends EditText { }
Тогда вы можете использовать это:
public String gE(EditText a) { return a.getText().toString(); }
И если у вас есть иерархия классов, вот так:
public class TextView {
public CharSequence getText() {...}
}
public class EditText extends TextView { }
public class TextInputEditText extends TextView { }
public class BootstrapEditText extends TextView { }
Тогда вы можете использовать это:
public String gE(TextView a) { return a.getText().toString(); }
Типы подкласса могут передаваться в качестве аргументов методам, которые принимают их тип суперкласса.