Yesterday, we looked at what a method is and the various
ways to call them. Today we are going to
look at what is called an overloaded methods.
Let’s take a look at the System.String class (https://msdn.microsoft.com/en-us/library/system.string(v=vs.110).aspx). Take a look at the method for Replace.
The replace method has two implementations. If you proved two single characters, the
first implementation is used. If you
provide to strings, the second implementation is used.
PS C:\> $String = "You are number 1 in my book."
PS C:\> $String.Replace("1","2")
You are number 2 in my book.
PS C:\>
$String.Replace("book","world")
You are number 1 in my world.
You can also utilize what are called Static Methods. Take a look at the documentation for
System.Math (https://msdn.microsoft.com/en-us/library/system.math(v=vs.110).aspx)
The purple box is the icon for a method. The yellow ‘S’ means that it is a static
method. In short, you can call static
methods without first creating an instance of the object. In our previous example, we needed a
System.Datetime object to call the AddSeconds() method on. With static methods we do not. I like System.Math a lot because it provides
advanced mathematical functionality without having to write the functions
myself. For example, cosine.
PS C:\> [Math]::cos(40)
-0.666938061652262
We access these methods by first casting for
System.Math. The System namespace is
already loaded in memory by default so you only need to cast for Math. We then provide 2 colons and then the method
name. Many of these methods are overloaded, so pay attention to the different
ways to implement them. They will save
you a lot of time.
Comments