5946242d75
KT-50257 KT-50476
61 lines
1.2 KiB
Kotlin
Vendored
61 lines
1.2 KiB
Kotlin
Vendored
// TARGET_BACKEND: JVM
|
|
// FULL_JDK
|
|
|
|
// FILE: charSequenceGetOverriddenInJavaSuperClass.kt
|
|
abstract class KACharSequence : JACharSequence()
|
|
|
|
class Test(s: String) : JCharSequence(s)
|
|
|
|
fun box(): String {
|
|
val t = Test("OK")
|
|
return "" + t[0] + t[1]
|
|
}
|
|
|
|
// FILE: JACharSequence.java
|
|
public abstract class JACharSequence implements CharSequence {
|
|
@Override
|
|
public char charAt(int index) {
|
|
return myCharAt(index);
|
|
}
|
|
|
|
protected abstract char myCharAt(int index);
|
|
}
|
|
|
|
// FILE: JCharSequence.java
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
|
import java.util.stream.IntStream;
|
|
|
|
public class JCharSequence extends KACharSequence {
|
|
private final CharSequence d;
|
|
|
|
public JCharSequence(CharSequence d) {
|
|
this.d = d;
|
|
}
|
|
|
|
@Override
|
|
public char myCharAt(int index) {
|
|
return d.charAt(index);
|
|
}
|
|
|
|
public int getLength() {
|
|
return d.length();
|
|
}
|
|
|
|
@NotNull
|
|
@Override
|
|
public CharSequence subSequence(int start, int end) {
|
|
return d.subSequence(start, end);
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
return d.toString();
|
|
}
|
|
|
|
@NotNull
|
|
@Override
|
|
public IntStream codePoints() {
|
|
return d.codePoints();
|
|
}
|
|
} |