2 NİSAN 2014, ÇARŞAMBA
Nasıl bir lambda seri hale getirmek için?
Ne kadar zarif bir lambda hale getirebilirim?
Örneğin, aşağıdaki kod NotSerializableException
atar. Nasıl SerializableRunnable
oluşturmadan bunu düzeltebilirim "kukla" arabirim?
public static void main(String[] args) throws Exception {
File file = Files.createTempFile("lambda", "ser").toFile();
try (ObjectOutput oo = new ObjectOutputStream(new FileOutputStream(file))) {
Runnable r = () -> System.out.println("Can I be serialized?");
oo.writeObject(r);
}
try (ObjectInput oi = new ObjectInputStream(new FileInputStream(file))) {
Runnable r = (Runnable) oi.readObject();
r.run();
}
}
CEVAP
2 NİSAN 2014, ÇARŞAMBA
Java 8 6* *imkanı sunuyor. Seri hale getirme durumunda, bu nedenle mümkün yazmak için:
Runnable r = (Runnable & Serializable)() -> System.out.println("Serializable!");
Ve lambda otomatik olarak yüklenecektir seri hale getirilebilir olur.
Bunu Paylaş:
Nasıl XML için bir zaman dilimi seri h...
Nasıl bir dize içine bir nesne seri ha...
Nasıl C bir nesne seri hale getirmek i...
Nasıl Django model bir örneği seri hal...
Xmlns=" almadan XML nesne seri hal...