Compartir a través de


Crear clases propias

Actualización: noviembre 2007

La instrucción class define clases. De manera predeterminada, se puede tener acceso público a los miembros de las clases, lo que quiere decir que cualquier código que pueda tener acceso a la clase puede tenerlo también al miembro de la clase. Para obtener más información, vea Modificadores de JScript.

Clases con campos

Los campos definen los datos que utiliza un objeto y son similares a las propiedades de los objetos basados en prototipos. A continuación figura un ejemplo de una clase simple con dos campos. Se crea una instancia de la clase con el operador new:

class myClass {
   const answer : int = 42; // Constant field.
   var distance : double;   // Variable field.
}

var c : myClass = new myClass;
c.distance = 5.2;
print("The answer is " + c.answer);
print("The distance is " + c.distance);

El resultado de este programa es:

The answer is 42
The distance is 5.2

Clases con métodos

Las clases también pueden contener métodos, que son funciones que contiene la clase. Los métodos definen la funcionalidad para manipular los datos de un objeto. La clase myClass definida más arriba se puede volver a definir para que incluya un método.

class myClass {
   const answer : int = 42;         // Constant field.
   var distance : double;           // Variable field.
   function sayHello() :String {    // Method.
      return "Hello";
   }
}

var c : myClass = new myClass;
c.distance = 5.2;
print(c.sayHello() + ", the answer is " + c.answer); 

El resultado de este programa es:

Hello, the answer is 42

Clases con constructores

Se puede definir un constructor para una clase. Un constructor, que es un método con el mismo nombre que la clase, se ejecuta cuando se crea una clase con el operador new. Se puede no especificar un tipo de valor devuelto para los constructores. En este ejemplo, se agrega un constructor a la clase myClass.

class myClass {
   const answer : int = 42;         // Constant field.
   var distance : double;           // Variable field.
   function sayHello() :String {    // Method.
      return "Hello";
   }
   // This is the constructor.
   function myClass(distance : double) {
      this.distance = distance;
   }
}

var c : myClass = new myClass(8.5);
print("The distance is " + c.distance);

El resultado de este programa es:

The distance is 8.5

Vea también

Conceptos

Creación avanzada de clases

Otros recursos

Objetos basados en clases

Objetos de JScript