I believe that Clojure dynamically dispatches to the correct method, just like Java static dispatches to the overloaded method.