해당 class가 observed class이다.
여기서는 observer들을 모두 list에 저장 해놓고, state가 변경 되엇을때, 모든 observer객체에게 해당 객체의 state가 바뀌었다는 것을 stateChanged를 사용해 알려준다.
해당 예제에서는 IObserver라는 인터페이스를 두고, update를 구현하게 하여, LogSubject에서 stateChanged에서 IObserver 객체들을 update라는 method를 동일하게 사용할 수 있도록 한다. 해당 방법을 polymorphism이라고 한다.
두 class는 IObserver를 implements하여, Observer를 만든 것이다.