Есть ли в Java такая вещь, как «локальный интерфейс»?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Есть ли в Java такая вещь, как «локальный интерфейс»?

Сообщение Anonymous »

Java позволяет мне определять локальные абстрактные классы, как в этом примере:

Код: Выделить всё

public class Foo {

public void foo() {
abstract class Bar {          // Bar is a local class in foo() ...
abstract void bar();
}

new Bar() {                   // ... and can be anonymously instantiated
void bar() {
System.out.println("Bar!");
}
}.bar();
}
}
По какой-то причине, когда я пытаюсь определить «локальный интерфейс» вместо локального класса, вот так:

Код: Выделить всё

public class Foo {

public void foo() {
interface Bar {           // Bar was supposed to be a local interface...
void bar();
}

new Bar() {               // ... to be anonymously instantiated
void bar() {
System.out.println("Bar!");
}
}.bar();
}
}
Java жалуется, что «Панель интерфейса-члена может быть определена только внутри класса или интерфейса верхнего уровня». Есть ли для этого причина? Или я упускаю свою ошибку?


Подробнее здесь: https://stackoverflow.com/questions/215 ... ce-in-java
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»