Java Compat Mapping for Local Interfaces

On this page:

Mapped Java Class

A Slice local interface is mapped to a Java interface with the same name, for example:

Slice
module Ice
{
    local interface Communicator
    {
        ...
    }
}

is mapped to the Java interface Communicator:

Java
package Ice;
 
public interface Communicator
{
    ...
}

LocalObject in Java

All Slice local interfaces implicitly derive from LocalObject, which is mapped to java.lang.Object in Java.

Mapping for Local Interface Inheritance in Java

Inheritance of local Slice interfaces is mapped to interface inheritance in Java. For example:

Slice
module M
{
    local interface A {}
    local interface B extends A {}
    local interface C extends A {}
    local interface D extends B, C {} 
} 

is mapped to:

Java
package M;
 
public interface A {}
public interface B extends A {}
public interface C extends A {}
public interface D extends B, C {}