Generic Methods

Sample generic method: "public Greater SignPLesser Sign P myMethod(Parameter GT P LT p) {..."
By using a generic method, we can declare the method without a specific type  and then get the  type 
information based on the type of the object passed to the method. The strangest thing about generic 
methods is that you must declare the type  variable BEFORE the return type of the method.
The Gt P Lt before P simply defines what P is before you use it as a type in the  argument.
Here you take an object of an unknown type and use a  "P" to represent the  type  The method will also 
returns an object of unknown type "P"