Если instanceof, приведите к конкретному дочернему элементу. Есть ли лучший способ?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Если instanceof, приведите к конкретному дочернему элементу. Есть ли лучший способ?

Сообщение Anonymous »

Отправьте родительский метод в метод, а затем найдите AllBy подобные продукты в БД.
В моей базе данных есть 3 таблицы. Продукт, столовое пиво и столовые чипсы
class Product {
String name;
String type;
int actualAmount;
int goalAmount;
}

class Beer extends Product {
int liters;
int percentage;
}

class Chips extends Product {
int weight;
String taste;
}

class ProductService {
private final ProductRepository repo;

//Send parent to method then getAll similar products by child variables.
public void foo(Product product) {
if (product instanceof Beer) {
Beer beer = (Beer) product;
List fromDb = repo.findAllByPercentage(beer.getPercentage());
}

else if (product instanceof Chips) {
Chips chips = (Chips) product;
List fromDb = repo.findAllByTaste(chips.getTaste());
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... better-way
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»