sealed class difference between classes and stucts