передавать классы pojo и dao в качестве аргументов с помощью java-обобщений и извлекать объекты; для этого нужно динамический обобщенный класс, чтобы принимать эти pojo и делать их в качестве параметров [duplicate]

1

У меня есть одно требование, где я могу передать любое pojo и сделать в качестве аргумента, подобного этому

public class Genericclass <pojo,dao>     {
//What I am expecting is when I call a method of this        

 class it should give me pojo object 
 public pojo getPojo(){
//create new object of the pojo
return pojo type OBJ;
}
Public dao getdao(){

//создаем новый день OBJ return dao OBJ; }}

i may use this while calling any type of pojo ex
Public class Temp {

Psvm(string args[]){
Add(Generic class<emppojo.class,empdao.class>);

//emp или dept или то, что когда-либо могу пройти//Я сделаю некоторую бизнес-логику и создаю OBJ для

generic claa, и я буду использовать методы getpojo и getdao

для создания новых объектов, и я получаю вызов объекта dao a

метод, Извините, если я сделал ошибку кодирования. дать мне решение
исходя из моего требования}//спасибо заранее

  • 0
    Я получаю это, скорее пишу в пустом методе main, если я пишу метод add в каком-то классе, скажем x, тогда какой будет сигнатура метода; для бывших
Теги:
generics

1 ответ

0

Из-за стирания java-типа во время выполнения общий класс неизвестен. Это означает, что во время выполнения вы не имеете доступа к классу родового типа. Ссылка sp00m показывает работу: перейдите в класс к вашему конструктору или getPojo().

public pojo getPojo(Class pojoClass){
    return pojoClass.newInstance();
}
  • 0
    at runtime the generic class is not known , что не совсем верно, если копать и копать глубже, вы можете получить универсальный тип: stackoverflow.com/questions/1901164/…
  • 0
    Как говорится в последнем комментарии в принятом ответе: это не решает проблему, поскольку нет способа вызвать T.class .

Ещё вопросы

Сообщество Overcoder
Наверх
Меню