Desde el año 2000 han sido muchas las modificaciones y mejoras en el lenguaje, a veces cuesta acostumbrarse a estas nuevas funcionalidades, veamos que nos depara 20 años después:
Es posible declarar el valor de propiedades en el momento de creación de un objeto, no es posible modificar a posteriori estos valores.
1
2
3
4
5
|
public class Vehiculo { public string Marca { get ; init; } public string Modelo { get ; init; } } |
Por tanto, si todas las propiedades de un objeto con valores primitivos (int, double…) son de solo lectura (inmutables), nos acercamos a la definición de estructura (struct). Recordemos que las estructuras contienen valores y las clases referencias a valores, el ejemplo básico:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
struct Vehiculo { public int Potencia; public Vehiculo( int pot) { this .Potencia = pot; } } Vehiculo a = new Vehiculo(120); Vehiculo b = a; a.Potencia = 200; System.Console.WriteLine(b.Potencia); |