diff --git a/bind/java/ClassesTest.java b/bind/java/ClassesTest.java index 54d3f4e..6193307 100644 --- a/bind/java/ClassesTest.java +++ b/bind/java/ClassesTest.java @@ -73,7 +73,7 @@ public class ClassesTest extends InstrumentationTestCase { public void testGoObject() { Runnable r = new GoRunnable(); r.run(); - assertTrue("GoRunnable.toString", r.toString().equals(Javapkg.ToStringPrefix)); + assertEquals("GoRunnable.toString", r.toString(), Javapkg.ToStringPrefix); Runnable r2 = ((GoRunnable)r).getThis(); assertTrue("GoObject.this", r == r2); Object o = new GoObject(); diff --git a/bind/testpkg/javapkg/classes.go b/bind/testpkg/javapkg/classes.go index 9915391..865c0ab 100644 --- a/bind/testpkg/javapkg/classes.go +++ b/bind/testpkg/javapkg/classes.go @@ -22,6 +22,7 @@ const ( ) type GoRunnable struct { + lang.Object lang.Runnable this lang.Runnable } diff --git a/internal/importers/java/java.go b/internal/importers/java/java.go index 0eb4764..69b2254 100644 --- a/internal/importers/java/java.go +++ b/internal/importers/java/java.go @@ -454,7 +454,7 @@ func (j *importer) scanClass(s *bufio.Scanner, name string) (*Class, error) { if len(cls.Supers) == 0 { if name == "java.lang.Object" { cls.HasNoArgCon = true - } else { + } else if !cls.Interface { cls.Supers = append(cls.Supers, "java.lang.Object") } }