• 0923-----homework-----about exceptions, print abc by lambda and default function


      1 package com.kai.li.HomeWork0923;
      2 
      3 /**
      4   *work class for all the class
      5   */
      6 public class HomeWork0923{
      7 
      8     /**
      9       *main fuction for all the text
     10       */
     11     public static void main(String[] args){    
     12         //questions of part 1 
     13         for(int i=0;i<4;i++){
     14             int  k;
     15             switch(i){
     16                 case 0:
     17                     try{
     18                         int zero=0;
     19                         k=911/zero;
     20                         break;
     21                     }catch(ArithmeticException e){
     22                         System.out.println(e.getMessage());
     23                     }catch(Exception e){
     24                         e.printStackTrace();
     25                         System.out.println(e.getMessage());
     26                     }
     27                 case 1:
     28                     try{
     29                         int[] b=null;
     30                         k = b[0];
     31                         break;
     32                     }catch(NullPointerException e){
     33                         System.out.println(e.getMessage());
     34                     }catch(Exception e){
     35                         e.printStackTrace();
     36                         System.out.println(e.getMessage());
     37                     }
     38                 case 2:
     39                     try{
     40                         int c[]=new int[2];
     41                         k = c[9];
     42                         break;
     43                     }catch(ArrayIndexOutOfBoundsException e){
     44                         System.out.println(e.getMessage());
     45                     }catch(Exception e){
     46                         e.printStackTrace();
     47                         System.out.println(e.getMessage());
     48                     }
     49                 case 3: 
     50                     try{
     51                         char ch = "abc".charAt(99);
     52                         break;
     53                     }catch(StringIndexOutOfBoundsException e){
     54                         System.out.println(e.getMessage());
     55                     }catch(Exception e){
     56                         e.printStackTrace();
     57                         System.out.println(e.getMessage());
     58                     }
     59             }
     60         }
     61         //questions of part 2
     62         Bank bank=new Bank(100);
     63         try{
     64             bank.withDrawal(150);
     65         }catch(InsufficientFundsException e){
     66             e.printStackTrace();
     67         }catch(NagativeFundsException e){
     68             e.printStackTrace();
     69         }
     70         bank=new Bank(100);
     71         try{
     72             bank.withDrawal(-15);
     73         }catch(NagativeFundsException e){
     74             e.printStackTrace();
     75         }catch(InsufficientFundsException e){
     76             e.printStackTrace();
     77         }
     78         //questions of part 3
     79         InterfaceX ix=()->{};
     80         ix.forl('a',26);
     81         ix.forl('A',26);    
     82     }
     83 }
     84 /**
     85   *this example is texted of exception
     86   */
     87 //define the class bank ,it has some functions with text
     88 class Bank{
     89     private double balance;
     90     Bank(){
     91         this.balance=0;
     92     }
     93     Bank(double balance){
     94         this.balance=balance;    
     95     }
     96     public double getBalance(){
     97         return this.balance;
     98     }
     99     public void withDrawal(double dAmount) throws InsufficientFundsException,NagativeFundsException{
    100         if(balance<dAmount)
    101             throw new InsufficientFundsException();
    102         if(dAmount<0)
    103             throw new NagativeFundsException();
    104         this.balance-=dAmount;
    105     }
    106 }
    107 //define the first exception by self
    108 class InsufficientFundsException extends Exception{
    109     @Override
    110     public void printStackTrace(){
    111         super.printStackTrace();
    112         System.out.println("------------");
    113     }
    114 }
    115 //define the seconde exception by self 
    116 class NagativeFundsException extends Exception{
    117     @Override
    118     public void printStackTrace(){
    119         super.printStackTrace();
    120         System.out.println("||||||||||||");
    121     }
    122 }
    123 /**
    124   *define a function interface
    125   *it is created for the lembda
    126   */
    127 @FunctionalInterface
    128 interface InterfaceX{
    129     void printLetter();
    130     default public void forl(int a,int b){
    131         for(int i=a;i<a+b;i++){
    132             System.out.print((char)i+" ");
    133         }
    134         System.out.println();    
    135     }
    136 }
  • 相关阅读:
    JS事件冒泡
    iis设置Gzip后,无后缀的url无法压缩解决 MVC iis GZIP
    SQL中的循环、for循环、游标
    采用CDN加速后,如何在程序里获取用户IP地址
    Resharper 的快捷键
    JS防后退跳转
    ASP.NET MVC如何实现自定义验证(服务端验证+客户端验证)
    Log4net创建日志及简单扩展
    统治世界的十大算法
    ffmpeg save rtsp stream
  • 原文地址:https://www.cnblogs.com/kaililikai/p/5901549.html
Copyright © 2020-2023  润新知