Java 如何使用泛型限制接受某些用户定义类对象的方法?

Java 如何使用泛型限制接受某些用户定义类对象的方法?,java,generics,Java,Generics,我有两个空类emp和reset。我在另一个类中有一个方法,它只接受我需要使用泛型实现的这两个类。这两个类之间没有任何关联 package abstracta; import generics.emp; import generics.nonemp; import generics.reset; // A Simple Java program to show working of user defined // Generic functions class Test { // A

我有两个空类emp和reset。我在另一个类中有一个方法,它只接受我需要使用泛型实现的这两个类。这两个类之间没有任何关联

package abstracta;

import generics.emp;
import generics.nonemp;
import generics.reset;

// A Simple Java program to show working of user defined
// Generic functions

class Test
{
    // A Generic method example
    static <T> void genericDisplay ( T element)
    {
        System.out.println(element.getClass().getName() +
                           " = " + element);
    }

    // Driver method
    public static void main(String[] args)
    {
         // Calling generic method with Integer argument
        genericDisplay(new emp());

        // Calling generic method with String argument
        genericDisplay(new reset());

        genericDisplay(new nonemp());// should not accept  . restrict this class
    }
}

我希望genericDisplay不接受nonemp类

您还没有向我们展示您的代码,但常见的解决方案是创建一个公共接口


然后,这两个类都实现了这个接口,而泛型仅作为其输入参数的类型应用于接口。

这个问题是在一个访谈类Employee{}中提出的;类用户{}call只接受这两个类的对象,如果它们不相关,泛型将无法帮助您。但您可以重载该方法,以便一个版本接受Employee,另一个版本接受User实例。请向我们展示您迄今为止所做的工作。这将使给出答案变得更容易。这可能是一个诡计多端的问题,希望用一个语法无效的联合类型void somethodt{…}来困住你。既然你已经透露这是一个面试问题,而且似乎没有正确的答案,我投票结束。我们无法进入面试官的脑海。如果你关心他们的答案,你应该联系他们。这在Java中是不可能的,我会认真地重新考虑在任何地方工作,首先设置这样的问题。