泛型,在Java中扩展了多个类

时间:2019-06-11 13:06:54

标签: java generics

我有两个类:User和UserDto。它们相似,例如:

User {
int id;
get\set}

UserDto{
int id;
get\set}

我有一个方法可以称之为doSmth()。 有没有一种方法可以使此方法作为输入参数(例如doSmth(User user)\ doSmth(UserDto user))与这两个类一起使用,而又不会使它过载?

我尝试使用像这样的泛型

    public <T extends User & UserDto> void doSmth(T user){
  System.out.println(user.getId);
}

但是它不起作用。例如,方法做类似

的简单事情

1 个答案:

答案 0 :(得分:1)

有。创建一个声明方法IUser的接口anOperation,使UserUserDto都实现相同的接口,然后doSmth(IUser)可以同时接受UserUserDto调用方法anOperation