Вопрос : гнездят ограничения типов

Hi,

I прочитало где-то что ограничениями, котор гнездят поверхностей стыка are

a., котор будут всегда подразумеваем static
b. внутренние, котор типы не могут объявить статическое

I членов (с исключением составьте - поля константы времени) сделало после того как оно понято ihese ограничения намереваются. Можете вы пожалуйста советовать мне.  Все соединения, ресурсы, предложения, Кодий образца высоки оценили. Спасибо заранее
class=

Ответ : гнездят ограничения типов

(A.) Как раз намеревает что вы не должны положить static перед внутренней поверхностью стыка.  Ее можно всегда снабжать ссылками, пока внутренний тип произведет compile-time ошибки если он использовал снаружи типов, то если он не быть статическим.  См. первый прикрепленный фрагмент Кодего.

(B.) Это кажется, что будет ложно, по мере того как я могу сделать следующий без любых ошибок:

тип MyClass1 {
      общественный статический тип MyInnerClass1 {
            общественный static int a = 0;

            общественный статический пустой метод () {
            }
      }
}

общественный тип WhiteMage {
      общественное свободное пространство static главным образом (args шнура []) {
            MyClass1.MyInnerClass1.a = 45;
            MyClass1.MyInnerClass1.method ();
      }
}
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
тип MyClass1 {
	общественная статическая поверхность стыка MyInnerInterface1 {
	}

	общественная поверхность стыка MyInnerInterface2 {
	}

	общественный статический тип MyInnerClass1 {
	}

	общественный тип MyInnerClass2 {
	}
}

ошибки //no
тип MyClass2 снабжает MyClass1.MyInnerInterface1, MyClass1.MyInnerInterface2 {
}

/**
 *
 * @author WhiteMage на http://www.experts-exchange.com/
 *
общественный тип WhiteMage {
	общественное свободное пространство static главным образом (args шнура []) {
		MyClass1.MyInnerInterface1 a = новое MyClass2 (); ошибка //no
		MyClass1.MyInnerInterface2 b = новое MyClass2 (); ошибка //no
		MyClass1.MyInnerClass1     c = новое MyClass1.MyInnerClass1 (); ошибка //no

		//ERROR!
		MyClass1.MyInnerClass2     d = новое MyClass1.MyInnerClass2 ();
	}
}
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us