A generic class with two generic parameters
using System;
using System.Collections.Generic;
using System.Text;
class MyCache<K, V> {
private static Dictionary<K, V> _objectCache;
public MyCache() {
MyCache<K, V>._objectCache = new Dictionary<K, V>();
}
private V FindValueInDB(K key) {
return default(V);
}
public V LookupValue(K key) {
V retVal;
if (_objectCache.ContainsKey(key) == true) {
_objectCache.TryGetValue(key, out retVal);
} else {
retVal = FindValueInDB(key);
}
return retVal;
}
}
class MyApp {
public static void main(String[] args) {
MyCache<string, string> cache1 = new MyCache<string, string>();
string val1 = cache1.LookupValue("key1");
MyCache<string, int> cache2 = new MyCache<string, int>();
int val2 = cache2.LookupValue("key1");
}
}
Related examples in the same category