### Question:
SingleEntryMap implements Map<K, V>, Map.Entry<K, V>, Serializable { @Override public V getValue() { return value; } SingleEntryMap(K key);  SingleEntryMap(K key, V value); @Override Set<Entry<K, V>> entrySet(); @Override boolean containsKey(Object key); @Override int size(); @Override boolean isEmpty(); @Override boolean containsValue(Object value); @Override V get(Object key); @Override V put(K key, V value); @Override V remove(Object key); @Override void putAll(Map<? extends K, ? extends V> map); @Override void clear(); @Override Set<K> keySet(); @Override Collection<V> values(); @Override K getKey(); @Override V getValue(); @Override V setValue(V value); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString(); @Override void forEach(BiConsumer<? super K, ? super V> action); @Override V getOrDefault(Object key, V defaultValue); @Override V putIfAbsent(K key, V value); @Override V computeIfAbsent(K key, Function<? super K, ? extends V> mappingFunction); @Override V computeIfPresent(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction); @Override V compute(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction); @Override V merge(K key, V newValue, BiFunction<? super V, ? super V, ? extends V> remappingFunction); @Override V replace(K key, V value); @Override boolean replace(K key, V oldValue, V newValue); @Override boolean remove(Object key, Object value);  }### Answer:
@Test public void getValue() { assertNull(map.getValue()); map.put("test", 123); assertEquals(123, (int)map.getValue()); map.put("test", null); assertNull(map.getValue()); map.put("test", 321); assertEquals(321, (int)map.getValue()); }