Object serialization: Difference between revisions

Content added Content deleted
(Added Kotlin)
mNo edit summary
Line 1,175: Line 1,175:
}
}
}</lang>
}</lang>

=={{header|Julia}}==
<lang julia>
abstract type Hello end

struct HelloWorld <: Hello
name::String
Hello(s) = new(s)
end

struct HelloTime <: Hello
name::String
tnew::DateTime
HelloTime(s) = new(s, now())
end

sayhello(hlo) = println("Hello to this world, $(hlo.name)!")

sayhello(hlo::HelloTime) = println("It is now $(now()). Hello from back in $(hlo.tnew), $(hlo.name)!")

h1 = Hello("world")
h2 = HelloTime("new world")

sayhello(h1)
sayhello(h2)

fh = open("objects.dat", "w")
serialize(fh, h1)
serialize(fh,h2)
close(fh)

sleep(10)

fh = open("objects.dat", "r")
hh1 = deserialize(fh)
hh2 = deserialize(fh)
close(fh)

sayhello(hh1)
sayhello(hh2)
</lang>


=={{header|Kotlin}}==
=={{header|Kotlin}}==