У меня есть этот интерфейс:Могу ли я сделать некоторую аннотацию, необходимую для классов, реализующих мой интерфейс?
public interface IDbTable extends Serializable
{
public int getId();
}
мне нужно обязывать все классы, которые реализуют IDbTable, чтобы иметь аннотацию «@DatabaseTable» и, по меньшей мере, одно поле внутри класса, которые имеют «@DatabaseField». Единственный способ реализации IDbTable должно быть так:
@DatabaseTable(tableName = "Something")
public static class TestTable implements IDbTable
{
@DatabaseField
public int id;
public int getId()
{
return id;
}
}
Возможно ли это с интерфейсом или наследования? Сегодня у меня есть единичный тест, который сканирует все классы и проверяет эти требования. Это хорошая практика?
Сверху моей головы подход к тестированию единиц измерения - это лучшее, что приходит на ум. – NPE
Нет способа сделать это требование порождающим ошибку? Без проведения единичных тестов? Элемент тестирования устройства кажется большим обходным решением для меня – Stew
Можно проверить его во время выполнения, подходит ли он вам? –