Java Static Initializer Block

  • + 47 comments

    Remember, you need to either use a try catch block or add "throws (Exception)" to a method name in order to throw a checked exception. In this case, there is no method name for the static initializer block, so you must use a try catch!

    See code below:

    MyCode{

    static Scanner input = new Scanner(System.in);
    static boolean flag = true;
    static int B = input.nextInt();
    static int H = input.nextInt();
    
    static{
        try{
            if(B <= 0 || H <= 0){
                flag = false;
                throw new Exception("Breadth and height must be positive");
            }
        }catch(Exception e){
            System.out.println(e);
        }
    
    }
    

    }