Skip to content

Instantly share code, notes, and snippets.

@nbeloglazov
Created October 30, 2012 07:06
Show Gist options
  • Select an option

  • Save nbeloglazov/3978729 to your computer and use it in GitHub Desktop.

Select an option

Save nbeloglazov/3978729 to your computer and use it in GitHub Desktop.
Overridden callMethods
Default callMethods
Overridden callMethods2
Expected:
Overridden callMethods
Overridden callMethods
Overridden callMethods2
(let [obj
(proxy [example.Test] []
(callMethods
([] (println "Overridden call methods"))
([obj] (proxy-super callMethods obj)))
(callMethods2
([] (println "Overridden call methods2"))))]
(.callMethods obj)
(.callMethods obj :test))
package example;
public abstract class Test {
public void callMethods(Object obj){
callMethods();
callMethods2();
}
public void callMethods() {
System.out.println("Default callMethods");
}
public void callMethods2() {
System.out.println("Default callMethods2");
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment