# 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. 洛谷P4931 情侣!给我!烧了! 数论

    正解:数论 解题报告: 传送门 这题,想不到就很痛苦,但是理解了之后还是觉得也没有很难,,,毕竟实现不难QAQ 首先关于前面k对情侣的很简单,就是C(n,k)*C(n,k)*A(k,k)*2k 随便解 ...

  2. kubernetes实战(十一):k8s使用openLDAP统一认证

    1.基本概念 为了方便管理和集成jenkins,k8s.harbor.jenkins均使用openLDAP统一认证. 2.部署openLDAP 此处将openLDAP部署在k8s上,openLDAP可 ...

  3. 【Python】【Web.py】python web py入门-5-请求处理(下)

    前面一篇,我们演示了如何获取GET和POST请求的参数信息,这篇我们介绍如何获取请求的头部信息,这个方法我们在前面一篇文章已经给出了.直接来看一个例子,首先,我们在hello.py文件新增一个方法,用 ...

  4. memcached-session-manager 教程实现session共享

    1简单介绍     1.1决定用什么序列化策略.     1.2配置tomcat         1.2.1加入 memcached-session-manager jar 包到tomcat中.    ...

  5. 十天精通CSS3(7)

    :enabled选择器 在Web的表单中,有些表单元素有可用(“:enabled”)和不可用(“:disabled”)状态,比如输入框,密码框,复选框等.在默认情况之下,这些表单元素都处在可用状态.那 ...

  6. [LeetCode] 827. Making A Large Island

    In a 2D grid of 0s and 1s, we change at most one 0 to a 1. After, what is the size of the largest is ...

  7. 处理hash冲突

    “处理冲突” 的实际含义是: 为产生冲突的地址寻找下一个哈希地址. 1. 开放定址法 2. 链地址法 ------------------------------------------------- ...

  8. liferay总结的通用的工具类

    在写增删改查的时候,自己动手写了几个通用的工具类,这几个通用的工具类也是基于API写的 第一个是liferay中的分页.跟我们做普通的web开发,分页是一样的首先需要建立一个分页的实体的类 packa ...

  9. 【介绍+安装】Nginx的介绍和安装详解

    == 介绍和安装 == Nginx是一个自由.开源.高性能及轻量级的HTTP服务器及反转代理服务器, 其性能与IMAP/POP3代理服务器相当.Nginx以其高性能.稳定.功能丰富.配置简单及占用系统 ...

  10. mysql回滚日志

    一.回滚日志(undo log) 1.作用 保存了事务发生之前的数据的一个版本,可以用于回滚,同时可以提供多版本并发控制下的读(MVCC),也即非锁定读 2.内容 逻辑格式的日志,在执行undo的时候 ...