我是 clojure 的新手,想使用 clojure 与 java 对象进行交互。如果我很好理解,可以使用defprotocol来实现这种交互。我具体尝试做的是以下内容:
1-我有以下java类
package mytestspackage;
public class TestObject {
private String lastName;
private String firstName;
private String age;
public TestObject(String lastName, String firstname, String age) {
super();
this.lastName = lastName;
this.firstName = firstname;
this.age = age;
}
public String getName() {
return this.lastName;
}
public void setName(String name) {
this.lastName = name;
}
public String getFirstname() {
return this.firstName;
}
public void setFirstname(String vorname) {
this.firstName = vorname;
}
public String getAge() {
return this.age;
}
public void setAge(String age) {
this.age = age;
}
}
2-我创建了一个 clojure 协议,它应该允许我访问上述 java 类TestObject的实例
(ns mytestspackage)
(defprotocol Test
(first-name [t])
(last-name [t])
(age [t]))
现在我的问题是:我在哪里具体实现协议中定义的方法以及如何使用此实现将 TestObject 实例传递到 clojure 端并访问名字、姓氏等值...
任何帮助,将不胜感激。提前致谢。
问候,贺拉斯