Package com.puppycrawl.tools.checkstyle.checks.design


package com.puppycrawl.tools.checkstyle.checks.design
Contains the Class Design checks that are bundled with the main distribution.
  • Classes
    Class
    Description
    Checks that classes are designed for extension (subclass creation).
    Checks that a class which has only private constructors is declared as final.
    Makes sure that utility classes (classes that contain only static methods or fields in their API) do not have a public constructor.
    Checks nested (internal) classes/interfaces are declared at the bottom of the primary (top-level) class after all init and static init blocks, method, constructor and field declarations.
    Implements Joshua Bloch, Effective Java, Item 17 - Use Interfaces only to define types.
    Ensures that exception classes (classes with names conforming to some regular expression and explicitly extending classes with names conforming to other regular expression) are immutable, that is, that they have only final fields.
    Checks that each top-level class, interface, enum or annotation resides in a source file of its own.
    Restricts throws statements to a specified count.
    Checks visibility of class members.