zoukankan      html  css  js  c++  java
  • 20145109 《Java程序设计》第五周学习总结

    20145109 《Java程序设计》第五周学习总结

    教材学习内容总结

    Chapter 8 Exception Handling

    try, catch

    All Exceptions are packed. If willing, 'try' to 'catch' instances, which are representative of exceptions, and deal with them.

    try {
    	...
    } catch (Exception ex) {
    	...
    }
    

    Exception Inheritance Architecture

    Exception are packed as throwable. Throwable includes Error and Exception. Error and its sub class represents serious system error and no dealing. As to mistakes in program design, Exception or its sub class are recommended. It's also called Exception Handling.

    Generally speaking, if some method can throw Throwable or subclass-instance, you must use 'try', 'catch' to handle it, except from Error and RuntimeException.

    Multi-catch

    try {
    	...
    } catch (IOException | InterruptedException | ClassCastException e) {
    	e.printStackTrace();
    }
    

    catch? throws ?

    If exception happens without sufficient info to deal with it when programming, we can throw exception. Thus, it is the cilent that handle it.

    public class FileUtil {
    	public static String readFile(String name) throws FileNotFoundException {
    		...
    	}
    }
    

    Actually, when exception happens, we can handle what we can handle with 'try' 'catch', the left part we 'throw' to the client.

    public class FileUtil {
        public static String readFile(String name) throws FileNotFoundException {
            StringBuilder text = new StringBuilder();
            try {
                Scanner console = new Scanner(new FileInputStream(name));
                while (console.hasNext()) {
                    text.append(console.nextLine()).append('
    ');
                }
            } catch (FileNotFoundException ex) {
                ex.printStackTrace();
                throw ex;
            }
            return text.toString();
        }
    }
    

    ** Inheritance ** :
    if the parent class declare some exception, the sub class overrides this method properly in these ways:

    • no declaration of throwing any exception by keyword 'throws'
    • throws some exceptions in the parent-class method
    • throws sub exceptions in the parent-class method

    But the following is forbidden:

    • throws other exceptions with no declaration in the parent class
    • throws parent exceptions in the parent-class method

    Stack Trace

    The easiest way, is printStackTrace() .
    The stack trace infomation in the console will show the type of exception. The origin is on the top.

    assert

    In some running time or situation, a state must be or not be. It is called assertion.

    finally

    No matter whether exception happens in 'try', if there's 'finally' block, it will be certain to execute.

    try {
    	...
    } finally {
    	...
    }
    

    Try-With-Resources

    try(Scanner console = new Scanner(new FileInputStream(name))) {
    	...
    }
    

    Interface java.lang.AutoCloseable

    Chapter 9 Collection & Map

    java.util.List:

    record the order of every instance and get them.

    java.util.Set:

    no repeat of the instances.

    java.util.Queue:

    yes, it's queue.

    教材学习中的问题和解决过程

    代码调试中的问题和解决过程

    其他(感悟、思考等,可选)

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 50/50 2/2 8/8
    第二周 100/150 2/4 8/16
    第三周 250/400 2/6 10/26 用git上传代码
    第四周 300/700 2/8 12/38 用wc查看代码行数
    第五周 100/800 1/9 10/48

    参考资料

  • 相关阅读:
    EF中的EntityState几个状态的说明
    sql server 更新表,每天的数据分固定批次设置批次号sql
    bootstrap Validators
    马老师 生产环境mysql主从复制、架构优化方案
    PHP在微博优化中的“大显身手”
    将form表单转化为json数据
    免费资源库收集
    奇怪的php问题
    PHP 大数自动转换为科学计数法
    access database in a helper function ?
  • 原文地址:https://www.cnblogs.com/Christen/p/5350971.html
Copyright © 2011-2022 走看看