Why define C# abstract classes without abstract members · HackerTrans