Many types have static methods such as Parse or Create, or operators such as + or - (which are actually static methods). These methods are typically used by default implementations of interface methods.) (Note that interfaces can already have static methods since C# 8 and the introduction of Default Interface Methods. Static members in interfaces? Static abstract members? What does that even mean? Yes, that’s weird, but it’ll make more sense after you see the use cases! This is one of the most useful features of C# 10 in my opinion, as it makes it extremely easy to define immutable custom structs, without having to manually implement Equals and GetHashCode. Note that this also supports the readonly struct modifier if the record is immutable.
Public readonly record struct Money( decimal Amount, string Currenc圜ode)