Tipado fuerte de clases
Publicado por joan (1 intervención) el 26/02/2013 19:29:33
Hola.
Estoy haciendo un programa y me encuentro con lo siguiente:
He creado una clase principal (clase genérica) que tendrá las propiedades básicas. A esta clase le llamo BaseObject.
Como podéis comprobar, para cada variable(que hace de propiedad) se le asigna una "T" que luego definiremos los distintos tipos de variable. Junto al nombre de la clase, también se indica la "T".
La idea de hacerlo así, es porque las propiedades son de distinto tipo, algunas son integer,otras string,booleanas,etc..
En la siguiente class, que es heredada de la primera (con lo cual usará sus propiedades básicas), seguimos añadiendo más propiedades y volvemos a hacer lo de tipado fuerte.
Mis preguntas son:
Se puede indicar el tipado "T" con una letra diferente para cada clase?
Estoy haciendo un programa y me encuentro con lo siguiente:
He creado una clase principal (clase genérica) que tendrá las propiedades básicas. A esta clase le llamo BaseObject.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
namespace Objects
{
public class BaseObject<T>
{
#region PROPIEDADES OBJETO BASE
private T objName;
public T Name
{
get { return objName; }
set { this.objName = value; }
}
private T objDesc;
public T Description
{
get { return objDesc; }
set { this.objDesc = value; }
}
private T objId;
public T Id
{
get { return objId; }
set { this.objId = value; }
}
private T objSelected;
public T Selected
{
get { return objSelected; }
set { this.objSelected = value; }
}
#endregion
}
}
Como podéis comprobar, para cada variable(que hace de propiedad) se le asigna una "T" que luego definiremos los distintos tipos de variable. Junto al nombre de la clase, también se indica la "T".
La idea de hacerlo así, es porque las propiedades son de distinto tipo, algunas son integer,otras string,booleanas,etc..
En la siguiente class, que es heredada de la primera (con lo cual usará sus propiedades básicas), seguimos añadiendo más propiedades y volvemos a hacer lo de tipado fuerte.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
namespace Objects
{
public class Alignments<T> : Objects.BaseObject<T>
{
#region PROPIEDADES ALINEACIÓN
private T objCriteriaFileName;
public T CriteriaFileName
{
get { return objCriteriaFileName; }
set { this.objCriteriaFileName = value; }
}
private T objDesignCheckSetName;
public T DesignCheckSetName
{
get { return objDesignCheckSetName; }
set { this.objDesignCheckSetName = value; }
}
private T objLength;
public T Length
{
get { return objLength; }
set { this.objLength = value; }
}
private T objUseDesignCheckSet;
public T UseDesignCheckSet
{
get { return objUseDesignCheckSet; }
set { this.objUseDesignCheckSet = value; }
}
#endregion
}
}
Mis preguntas son:
Se puede indicar el tipado "T" con una letra diferente para cada clase?
Valora esta pregunta


0