This example seems like something you shouldn't be able to do. Now you have 2 private '#x' properties with unique values. It's very surprising.
Intuitively, you would expect the subclass to essentially be saying "my version of this variable is equal to 200, not 100". Then both calls should return the same result (200)