La situación es la siguiente: Estoy desarrollando un
conjunto de clases que se transmitirán información entre
sí. Actualmente he declarado estas clase como no
heredables, aunque la verdad yo quisiera implementarlas
como interfaces o como clases heredables.
La razón de hacerlas no heredables es que casi todas las
propiedades de las clases serán de solo lectura, solo una
de lectura-escritura, y tendrán un método que se podrá
usar solo una vez al crearlas. Después de creadas, ya no
podrá volverse a utilizar este método, que es el que les
pasará la información a las propiedades de la clase.
Después de creadas la clases (al decir creadas me refiero
a instanciarlas y hacer el archivo con su extensión), una
de ellas, "Clase2", debe escribir en la propiedad de
lectura-escritura de las otras clases ("Clase3"
y "Clase4"), pero SOLO ESTA CLASE puede escribir en esa
propiedad, es decir, no quiero que haya forma de escribir
en esa propiedad de las otras clases más que a través
de "Clase2". Por ejemplo, si yo declaro una nueva
instancia de "Clase2" y hago:
Dim Cl2 as new Clase2
Cl2.PropiedadLectEscr=Objeto
la propiedad no cambia. Para lograr esto, he declarado la
propiedad de forma tal, que para poder escribir el valor,
se le deba pasar un parámetro a la propiedad (como con la
propiedad item de un arrayList). Este parámetro es una
cadena que solo la "Clase2" conoce, y por lo tanto
solo "Clase2" puede acceder al método Set de la propiedad
(la función Get no ocupa el parámetro).
Después de este rollo (posiblemente innecesario, solo que
traté de clarificarlo) mi pregunta es: ¿Es posible que
alguien de alguna manera: a) Logre extraer ese parámetro
b) acceder al método Set de la propiedad?
Si la respuesta es que no se puede, ¿de qué otra forma
puedo lograr esta misma seguridad trabajando con
Interfaces o con una clase heredable?
Saludos a todos y Gracias.
Leer las respuestas