June 26, 2002 - Defining a Polymorphic Function | WebReference

June 26, 2002 - Defining a Polymorphic Function

Yehuda Shiran June 26, 2002
Defining a Polymorphic Function
Tips: June 2002

Yehuda Shiran, Ph.D.
Doc JavaScript

You can define your own polymorphic methods. All you need to do is define your objects in the most basic type, which is Object. All types are derived from Object, so you can pass an integer, a double, and an object of any class to an argument of type Object.

The function WriteNameValue() accepts a name and a value as parameters, and prints them. The name is a string and the value is defined of type Object. In this way, the value parameter can be substituted with any type. The implementation of this utility function is based on the system's polymorphic method, ToString(). You can write your own implementation, making sure you handle each and every type correctly. Here is the code:

   // compile with: jsc writename.js
   function WriteNameValue(name : String, value : Object) : void {
     print(name + value.ToString());
   }
   var o : Object = new Object();
   var i : int    = 9;
   var d : double = 5.8;
   var b : Base = new Base();
   WriteNameValue("o: ", o);
   WriteNameValue("i: ", i);
   WriteNameValue("d: ", d);
   WriteNameValue("b: ", b);
 
   class Base {
    protected var i : int = 5;
    public function ToString() : String {
    print("i is " +  i);
	return("foo");
  }
}
To learn more about JScript .NET, go to Column 111, JScript .NET, Part V: Polymorphism.