java.lang.IllegalStateException w .NET?

84

Opis java.lang.IllegalStateExceptionz dokumentacji Java:

Sygnalizuje, że metoda została wywołana w niedozwolonym lub nieodpowiednim momencie. Innymi słowy, środowisko Java lub aplikacja Java nie jest w stanie odpowiednim do żądanej operacji.

Czy istnieje odpowiednik dla IllegalStateExceptionw .NET Framework?

Pion
źródło

Odpowiedzi:

106

System.InvalidOperationException

Wyjątek, który jest generowany, gdy wywołanie metody jest nieprawidłowe dla bieżącego stanu obiektu.

Tamas Czinege
źródło
Myślę, że to lepsza nazwa dla tego typu wyjątku
user12345613
19
@ user12345613 Nie. Java IllegalStateExceptionnie ogranicza się do obiektów ani stanu obiektu. A nazwa klasy InvalidOperationExceptionpodpowiada, że ​​metoda nie jest obsługiwana, ale nie sugeruje, że dzieje się tak z powodu stanu.
Maarten Bodewes
1
@MaartenBodewes Masz rację; sama nazwa nie daje się szybko i łatwo zrozumieć. Ja też nie użyłbym (nie mówiąc już o tym), że ten wyjątek dotyczy wyjątków stanu obiektu wyłącznie według jego nazwy bez tej odpowiedzi (lub dokumentacji w Microsoft). To jest problem z ramami. Jednak wyjątek IllegalStateException dotyczy wyłącznie obiektów i wywołań metod zgodnie z dokumentacją java 7 znajdującą się pod adresem docs.oracle.com/javase/7/docs/api/java/lang/… i dokumentami java 8 docs.oracle.com/javase/8/ docs / api / java / lang /…
Richard Barker