/media/sda-magnetic/david/Extern-Magnetic-2022-06-29/Extern01/Dokumente-2021-05-8/disk10-ab-2020-01-10/02-debian-pc2-work/informatik/java-new/2020-01-02/InterfaceTest.java


public class InterfaceTest {
    public static void main (String [] args) {
        Person p1 = new PersonA ();
        Person p2 = new PersonB ();
        
        p1.setName ("David", "Vajda");
        p2.setName ("Anton", "Friedrich");
        
        System.out.println (p1.toString());
        System.out.println (p2.toString());
    }
    
    interface Person {
        void setName (String FirstName, String LastName);
        String toString ();
    }
    
    public static class PersonA implements Person {
        String FirstName = null;
        String LastName = null;
        
        @Override
        public void setName (String FirstName, String LastName) {
            this.FirstName = FirstName;
            this.LastName = LastName;
        }
        
        @Override
        public String toString () {
            return this.FirstName + " " + this.LastName;
        }
    }
    
    public static class PersonB implements Person {
        String Name = null;
        
        @Override
        public void setName (String FirstName, String LastName) {
            this.Name = FirstName + " " + LastName;
        }
        
        @Override
        public String toString () {
            return this.Name;
        }
    }
    

}