# 2165310 《Java程序设计》第5周学习总结

教材学习内容总结

ch07内部类与异常类

  • 内部类
    - 继承外嵌类成员变量与方法
    - 不可以声明类变量/类方法
    - 不可以被外嵌类以外的类调用,外嵌类可以通过它声明对象作为成员
    - 可以被static修饰,但是不能调用外嵌类实例成员变量。(非内部类不可以用static修饰)

  • 匿名类
    - 和子类有关的匿名类:是一个子类,不能用于声明对象但是可以直接创建对象。
    - 和接口有关的匿名类:必须重写类名中的全部方法
  • 异常类
    - try-catch语句:异常类可以调用public String getMessage();public void printStackTrace();public String toString();获取有关异常信息。
    - 自定义异常类:扩展extends类自定义异常类,声明方法时,用throws声明要产生的若干异常,创建异常对象,用throw抛出该异常对象。
  • 断言:
    - 语法:assert booleanExpression;或者assert booleanExpression:messageException;
    - 启用与关闭断言语句:java -ea mainClass

I/O流

  • 总体:引入java.io包,所有输入流都是ImputStream(字节输入流)或Reader(字符输入流)的子类,所有输出流都是OutputStream(字节输出流)或Writer(字符输出流)的子类。
  • File类:
    - 不涉及对文件的读写操作
    - 文件属性:利用相关函数可以获得文件相关信息,具体函数见书p282。
    - 目录:
    1. 创建目录:public boolean mkdir()
    2. 列出目录下文件与子目录:public String[] list(),public File[] listFiles()
    3. 返回目录下指定类型文件:public String[] list(FilenameFilter),public File[] listFiles(FilenameFilter),其中通过重写FilenameFilter接口的方法public boolean accept(File dir,String name);并调用。
    - 运行可执行文件:Runtime
  • 文件字节输入、输出流:InputStreamOutputStream
  • 文件字符输入、输出流:FileReaderFileWriter
  • 缓冲流:BufferedReaderBufferedWriter
  • 随机流:RandomAccessFile
  • 数组流:
    • 字节数组流:ByteArrayInputStreamByteArrayOutputStream
    • 字符数组流:CharArrayInputStreamCharArrayOutputStream
  • 数据流:DataInputStreamDataOutputStream
  • 对象流:ObjectInputStreamObjectOutputStream
  • 序列化对象克隆
  • Scanner解析文件
    - 默认分隔符:空格
    - 自定义分隔符:正则表达式
  • 文件对话框
  • 带进度条的输入流
  • 文件锁

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

  • Mac与Windows有所不同,代码有时没法运行

    解决过程:根据Mac的路径等修改代码

  • 跳过几章内容,有的代码不是很理解

    查看工作文档或者上网搜索,进行学习标注

  • 输入流、输出流众多,有时会进行混淆

    回头查看书本内容,多次记忆辨析

代码托管

上周考试错题总结

  • 测试完成后补充

20165310 java_blog_week5的更多相关文章

  1. 20165310 NetSec2019 Week6 Exp4 恶意代码分析

    20165310 NetSec2019 Week6 Exp4 恶意代码分析 一.实验要求 1.系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间 ...

  2. 20165310 NetSec2019 Week5 Exp3 免杀原理与实践

    20165310 NetSec2019 Week5 Exp3 免杀原理与实践 一.免杀原理 杀软是如何检测出恶意代码的 基于特征码的检测:特征码就是一段恶意程序有但是正常程序没有的一段代码,当杀软检测 ...

  3. 20165310 NetSec Week4 Exp2 后门原理与实践

    20165310 NetSec Exp2后门原理与实践 一.基础问题 例举你能想到的一个后门进入到你系统中的可能方式? 网页木马等访问网页导致 下载非官方源软件 随意下载邮件中不明程序等 例举你知道的 ...

  4. 20165310 NstSec2019 Week3 Exp1 逆向与Bof基础

    20165310 NstSec2019 Week3 Exp1 逆向与Bof基础 一.实验内容 实验目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用fo ...

  5. 20165310 NstSec2019 Week1 Exp0 Kali安装

    20165310 NstSec2019 Week1 Exp0 Kali安装 Kali下载与安装 进入Kali官网 ,进入Download选项,选择Kali Linux 64 bit VMware VM ...

  6. 20165310 《Java程序设计》课程总结

    20165310 <Java程序设计>课程总结 一.每周作业及实验报告博客链接汇总 预备作业一:我期望的师生关系 20165310 我期望的师生关系 预备作业二:学习基础和C语言基础调查 ...

  7. 20165310 Java实验四 《Android程序设计》

    20165310 实验四 <Android程序设计> 第24章:初识Android 任务一:改写res目录中的内容,Hello World后要显示自己的学号,自己学号前后一名同学的学号 首 ...

  8. 20165310 Java实验五《网络编程与安全》

    20165310 Java实验五<网络编程与安全> 任务一 题目:①编写MyBC.java实现中缀表达式转后缀表达式的功能:②编写MyDC.java实现从上面功能中获取的表达式中实现后缀表 ...

  9. 20165310 学习基础和C语言基础调查

    学习基础和C语言基础调查 做中学体会 阅读做中学之后,了解老师关于五笔练习.减肥.乒乓和背单词的经历,不禁联想到自己学古筝的经历. 成功的经验 兴趣 我其实小时候学过一段时间古筝,但是那时候是因为父母 ...

随机推荐

  1. (转)Spring实现IoC的多种方式

    原文地址:http://www.cnblogs.com/best/p/5727935.html 目录 一.使用XML配置的方式实现IOC 二.使用Spring注解配置IOC 三.自动装配 四.零配置实 ...

  2. 洛谷P3826 蔬菜 [NOI2017] 贪心

    正解:贪心 解题报告: umm,,,其实我还不会 废话我这么菜怎么可能懂QAQ 先占坑,想学习这题很久了呢QAQ

  3. python 全局变量引用与修改

    一.引用 使用到的全局变量只是作为引用,不在函数中修改它的值的话,不需要加global关键字.如: #! /usr/bin/python a = 1 b = [2, 3] def func(): if ...

  4. mysql 内置功能 存储过程 创建有参存储过程

    对于存储过程,可以接收参数,其参数有三类: #in 仅用于传入参数用 #out 仅用于返回值用 #inout 既可以传入又可以当作返回值 传入参数使用格式 in 变量 数据类型 返回值使用格式 out ...

  5. spring boot 中用@value给static变量赋值

    需求:改写一个JedisUtils,工具类,所以最好用静态方法和变量. @value("${redis.host}") private static String redisHos ...

  6. Sublime Text3(mac)一些插件和快捷键

    Sublime Text3(mac)一些插件和快捷键 楚简约 关注 2017.02.24 17:02* 字数 1216 阅读 412评论 0喜欢 2 下载地址http://www.sublimetex ...

  7. php unset()函数销毁变量但没有实现内存释放

    <?PHP $a = "hello";$b = &$a;unset( $b );echo $a; // 输出 helloecho $b; // 报错$b = &quo ...

  8. MDX导航结构层次:《Microsoft SQL Server 2008 MDX Step by Step》学习笔记九

    <Microsoft SQL Server 2008 MDX Step by Step>学习笔记九:导航结构层次   SQL Server 2008中SQL应用系列及BI笔记系列--目录索 ...

  9. #C++初学记录(ACM试题2)

    Max Sum Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-seq ...

  10. 网络编程—代码—TCP网络传输

    一.TCP:用字符流传输信息 ------------------------------------------------------------------------------ [用字符流的 ...