[STAThread] static void Main(string[] args) { //Instanciamos dos objetos de la clase Celador //en otras palabras creamos a los Celadores Rodrigo y Oscar
Celador celador1 = new Celador(); // aqui aparece el error
celador1.nombre = "Rodrigo";
celador1.valorHora = 10000;
celador1.fechaNacimiento = "10/03/1965"; }
}
tengo un problema y me aparece el siguiente error:
Error 2 'Vigilancia.Celador.nombre' no es accesible debido a su nivel de protección
gracias cualquier ayuda.
saludos
Título: Re: error en llamada una clase: "no es accesible"
Publicado por: ProfesorX en Martes 19 de Agosto de 2008, 18:59
1. Recuerda utilizar [ code][ /code], mejora la legibilidad del codigo. 2. El error sucede porque las variables de tu clase no estan definidas explicitamente como public, y por defecto, las variables de una clase son de tipo private, con el constructor pasa lo mismo, no tienes un constructor para Celador() con cero parametros, entonces el compilador crea un constructor por defecto, y los constructores por defecto son de tipo private, asi que por eso dice que el constructor no esta accesible.
La solucion es que declares tus variables explicitamente como public,
Código: C#
class Celador
{
publicstring nombre;
publicdouble valorHora;
publicstring fechaNacimiento;
publicbool escopeta =false;
ademas define explicitamente un contructor por defecto de tipo public o utiliza el otro constructor que ya tienes, y pasale los parametros, ejemplo: