|
|
 |
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.
People who read this tip also read these tips:
Look for similar tips by subject:
|