Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.50 KB | None | 0 0
  1. import org.jetbrains.annotations.NotNull;
  2.  
  3. import java.io.FileOutputStream;
  4. import java.io.IOException;
  5. import java.io.ObjectOutputStream;
  6. import java.io.Serializable;
  7.  
  8. //абстрактний клас Person
  9. public abstract class Person {
  10.  
  11.     private int age;
  12.     private String name;
  13.  
  14.     Person(int age, String name) {
  15.         this.age = age;
  16.         this.name = name;
  17.     }
  18.  
  19.     public String getName() {
  20.         return name;
  21.     }
  22.  
  23.     //внутрішній клас Address
  24.     class Address {
  25.         private String streetName;
  26.     }
  27.  
  28.     //внутрішній клас Employee, що реалізує Serializable та Comparable<Person>
  29.     class Employee extends Person implements Serializable, Comparable<Person>{
  30.  
  31.         private Address address; //юзаємо адресу, бо нащось же ми її створили
  32.        
  33.         //конструктор, що юзає супер
  34.         Employee(int age, String name, Address address) {
  35.             super(age, name);
  36.             this.address = address;
  37.         }
  38.  
  39.         //реалізація комперабл
  40.         @Override
  41.         public int compareTo(@NotNull Person o) {
  42.             return name.compareTo(o.getName());
  43.         }
  44.  
  45.         //серіалізація
  46.         public void writeIn() throws IOException {
  47.             ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("objects.dat"));
  48.             out.writeObject(this);
  49.             out.close();
  50.         }
  51.     }
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement