# 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. Zookeeper简介及单机、集群模式搭建

    1.zookeeper简介 一个开源的分布式的,为分布式应用提供协调服务的apache项目. 提供一个简单的原语集合,以便于分布式应用可以在它之上构建更高层次的同步服务. 设计非常易于编程,它使用的是 ...

  2. ubuntu ssh 连接加速

    vi /etc/ssh/sshd_config 最后加上 UseDNS no

  3. Unified Modeling Language

    https://en.wikipedia.org/wiki/Unified_Modeling_Language

  4. PHP Architecture

    http://www.laruence.com/2008/08/12/180.html

  5. USB--- kvm in ubuntu:

    USB SS=USB SuperSpeed=USB 3.0!!顺应此前的USB 1.1 FullSpeed和USB 2.0 HighSpeed https://jingyan.baidu.com/ar ...

  6. iOS-程序启动原理和UIApplication(转载)

    一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序. (2)每一个应用都有自己的UIApplica ...

  7. 四种数据库随机获取N条数据的方法

    1.SQL Server: SELECT TOP  n  *  FROM  tableName ORDER BY NEWID(); 2.ORACLE: SELECT * FROM (SELECT * ...

  8. ARP报文

    硬件类型:指明了发送方想知道的硬件接口类型,以太网的值为1: 协议类型:指明了发送方提供的高层协议类型,IP为0x0800(16进制): 硬件地址长度和协议长度:指明了硬件地址和高层协议地址的长度,这 ...

  9. 利用VS正则替换删除文本行首数据等字符

    删除以数字开头的加‘.’的行首序号 ^[0-9][0-9][.]

  10. elasticsearch 6.0在Ubuntu下的安装

    1:直接下载 elasticsearch 6.0  zip文件  https://www.elastic.co/downloads/past-releases 2:解压:进入到解压后的bin目录,执行 ...