Java泛型类和构造函数
我想创建用于执行GetInstance的父类。但我总是会崩溃。Java泛型类和构造函数,java,android,generics,constructor,Java,Android,Generics,Constructor,我想创建用于执行GetInstance的父类。但我总是会崩溃。 minInstance=新实例()总是使这行崩溃 public class Instance<T> { public Instance<T> mInstance; public Instance<T> GetInstance() { return mInstance; } public <T> Instance() {
minInstance=新实例()代码>总是使这行崩溃
public class Instance<T> {
public Instance<T> mInstance;
public Instance<T> GetInstance() {
return mInstance;
}
public <T> Instance() {
mInstance = new Instance<>();
}
}
公共类实例{
公开审判;
公共实例GetInstance(){
回报率;
}
公共实例(){
minInstance=新实例();
}
}
公共类计时器扩展实例{
}
java.lang.StackOverflower错误
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
位于com.familyfit.google.pushups.global.Instance.(Instance.java:21)
在com.familyfit.google.pushups.global.Instance上
public class Timer extends Instance<Timer> {
}
public static class Instance<T> {
private static final Instance<?> mInstance = new Instance<>();
@SuppressWarnings("unchecked")
public Instance<T> GetInstance() {
// Make generic static instance.
// Strategy used similar to Collections.emptyList() implementation
return (Instance<T>) mInstance;
}
private Instance() {
}
}
public final class Singleton{
private static final Singleton ourInstance = new Singleton();
public static Singleton getInstance() {
return ourInstance;
}
/**
* Private constructor
*/
private Singleton() {}
}
public final class Instance {
private static Instance mInstance;
public static Instance getInstance(){
if(mInstance == null){
mInstance = new Instance();
}
return mInstance;
}
private Instance(){
// your initialization logic
}
}