What are the differences between checked and uncheckedexceptions? What are some anti-patterns, which are poor ways ofdesigning exception?