学号 20175329 2018-2019-3《Java程序设计》第六周学习总结
教材学习内容
-
第七章 内部类与异常类
- 内部类与外嵌类之间的重要关系如下:
- 内部类的外嵌类的成员变量在内部类中仍然有效,内部类中的方法也可以调用外嵌类中的方法。
- 内部类的类体中不可以声明类变量和类方法。外嵌类的类体中可以用内部类声明对象,作为外嵌类的成员。
- 内部类仅供它的外嵌类使用,其他类不可以用某个类的内部类声明对象。
2.匿名类
- 匿名类可以继承父类的方法也可以重写父类的方法。
- 使用匿名类时,必然是在某个类中直接用匿名类创建对象,因此匿名类一定是内部类。
- 匿名类可以访问外嵌类中的成员变量和方法,匿名类的类体中不可以声明static成员变量和static方法。
- 由于匿名类是一个子类,但没有类名,所以在用匿名类创建对象时,要直接使用父类的构造方法。
3.try-catch
语句
Java使用try-catch
语句来处理异常,将可能出现的异常操作放在try-catch
语句的try
部分,一旦try
部分抛出异常现象,或调用某个可能抛出异常对象的方法,并且该方法抛出了异常对象,那么try
部分将立刻结束执行,转向执行相应的catch
部分。
3.自定义异常类
- 在编写程序时可以扩展
Excepition
类定义自己的异常类,然后根据程序的所需要来规定哪些方法产生这样的异常。一个方法在声明时可以使用throws
关键字声明索要产生的若干个异常,并在该方法的方法体重具体给出产生异常的操作,即用相应的异常类创建对象,并使用throw
关键字抛出该异常对象,导致该方法结束执行。程序必须在try-catch
块语句调用可能发生的异常方法,其中catch
的作用就是捕获throw
关键字抛出异常对象。
4.断言
断言语句在调试代码阶段非常有用,断言语句一般用于程序不准备通过捕获异常来处理错误。使用关键字assert
声明一条断言语句。
教材学习中的问题和解决过程
-
问题1:在使用
try-catch
语句退出代码时发现有一段代码总是不被执行 -
问题1解决办法:通过JDB调试发现在
catch
后代码直接跳出但是却不被执行,最后在书上P171页发现如果在try-catch
中执行了return
语句那么finally
语句会被执行,但是我执行的是System.exit(0)
语句后面的finally
子语句无法被执行于是我就删掉了System.exit(0)
语句中的内容程序能够执行。
代码托管
学习进度条
| | 代码行数(新增/累积)| 博客量(新增/累积)|学习时间(新增/累积)| 重要成长 |
- | :-: | :-: | :-: | -:
目标 | 5000 | 15 | 400 | 目标能够运用自行开发Android |
第一周 | 10/10 | 2/2 | 10/10 | 初步熟悉JAVA以及语法区分与C的不同之处 |
第二周 | 100/100 | 3/3 | 35/35 | 语法知识 |
第三周 | 300/300 | 4/4 | 60/60 | 了解对象 |
|第四周 | 800/800|5/5|10/80|学习到子类与父类|
|第五周| 200/200|6/6|20/90|接口实现|
|第六周|100/100|8/8|10/100|内部类与异常类|