这是《Java8编程参考官方教程》第13章的笔记。
I/O的基础知识:字节流、字符流、预定义流;
字节流和字符流都使用Unicode编码。
     预定义流包括in、out、err。
所有的Java程序都自动导入java.lang包。这个包定义了System类。in、out、err在System类中被声明为public、static、final。System.in是InputStream类型的对象,System.out和System.err是PrintStream类型的对象。

使用PrintWriter想控制台输出简单文本比使用System.out更容易使程序国际化。

FileNotFoundException是IOException的子类。

自动关闭文件:起始自JDK 7。自动资源管理(Automatic Resource Management, ARM),该特性以try语句的扩展板为基础。
带资源的try语句:
     try(resource-specification) {
         // us the resource 
     }
resource-specification用来声明和初始化资源。只有对于那些实现了AutoCloseable接口的资源,才能使用带资源的try语句。所有流类都实现了这Closeable和AutoCloseable接口。
当离开try语句时,会隐式的调用close()方法。
try语句中声明的资源被隐式声明为final。资源的作用域局限于带资源的try语句。

transient和volatile修饰符:
  1. 如果将实例变量声明为transient,那么当存储对象时,实例变量的值将不需要永久保存。
  2. 由volatile修饰的变量可以被程序的其他部分随意修改。涉及多线程的程序就是这些情况中的一种。

instanceof返回一个boolean,代表对象是否是指定的类型或可以被转换为这种指定类型。

strictfp确保采用与java以前版本使用的相同方式执行浮点计算(以及所有截断)。

本地方法,native修饰符:          没看懂,                    略。

assert:判断是否为true。用于测试。
-ea开启断言,-da禁用断言。
-ea:package...     启用指定包(及其所有子包)中的断言;
-da:package...     同上。
-ea:class              启用某个类;
-da:class              同上。

静态导入:
e.g.     import static pke.type-name.static-member-name;
可以在静态方法的前面略去类名。e.g.Math.sqrt()可以写成sqrt()。
但是,Java将类库组织到包中的目的是避免名称空间发生冲突。当导入静态成员时,就将这些成员带入全局名称空间。
除非频繁使用某个静态成员,不要滥用。

this()调用重载构造函数:this()最适合用于包含大量初始化代码的构造函数,而不适合用于那些只简单设置少量域变量值的构造函数。
调用this()相对那些包含内联初始化代码的构造函数来说,要慢一点,因为调用和返回机制增加了开销。
在构造函数中,this()的调用必须是第一条语句,同一个构造函数中不能同时又this()和super()。因为super()也要是第一条语句。
在调用this()时不能使用当前类的任何实例变量。

紧凑API配置文件:起始自JDK 8。
优势在于,用不到完整库的程序不需要下载整个库。
使用紧凑配置文件减小了库的大小,让一些Java程序能够在无法支持完整JavaAPI的设备上运行。
还降低了加载程序所需的时间。

I/O、Applet以及其他主题相关推荐

  1. 《开源合辑-(游戏/娱乐-角色扮演)之(Java)》

    NWN Munchkin Munchkin is a toolset for editing characters for Bioware's Neverwinter Nights game. It ...

  2. java applet 游戏_Java Applet实现五子棋游戏

    从谷歌的AlphaGo到腾讯的绝艺,从人脸识别到无人驾驶,从谷歌眼镜到VR的兴起,人工智能领域在不断的向前迈进,也在不断深入的探索.但背后错综复杂的技术和利益成本也是很多企业亟待解决的难题.对于人工智 ...

  3. linux mint 图标主题_如何在 Linux Mint 中更换主题

    一直以来,使用 Cinnamon 桌面环境的 Linux Mint 都是一种卓越的体验.这也是为何我喜爱 Linux Mint的主要原因之一. -- It's Foss(作者) 一直以来,使用 Cin ...

  4. 的控制台主题_【12.11最新版】芯片机/大气层主题软件NXThemesInstaller

    Switch的主题的安装和管理主要通过自制软件--NXThemesInstaller 软件地址:https://github.com/exelix11/SwitchThemeInjector 本文只传 ...

  5. linux mint 主题切换,详解如何在 Linux Mint 中更换主题

    一直以来,使用 Cinnamon 桌面环境的 Linux Mint 都是一种卓越的体验.这也是为何我喜爱 Linux Mint的主要原因之一. 自从 Mint 的开发团队开始更为严肃的对待设计, &q ...

  6. 主题:windows xp 系统CMD命令大全(一)

    转自:http://www.docin.com/p-465660.html 词条简介 cmd-cmd.exe- 进程 信息 进程 文件 :cmd或者cmd.exe 进程名称:WindowsComman ...

  7. IBM WebShere Portal主题与皮肤开发

    所谓主题与皮肤,主要指门户系统的界面风格与显示方式.在企业门户项目的实施中,主题与皮肤的开发是重中之重.因为作为所有企业内外信息.应用的统一入口,可谓是一个企业的脸面.另一方面讲,在一个企业内,没有任 ...

  8. Java Applet实现五子棋游戏

    Java Applet实现五子棋游戏 从谷歌的AlphaGo到腾讯的绝艺,从人脸识别到无人驾驶,从谷歌眼镜到VR的兴起,人工智能领域在不断的向前迈进,也在不断深入的探索.但背后错综复杂的技术和利益成本 ...

  9. linux firefox applet,在HTTPS上的Firefox中加载Java Applet

    我们开发了一个分析应用程序,它使用特殊的Java小程序(由IBM开发)来查看一些数据.这是一个在Apache上运行的Django应用程序.一切工作正常,直到我们转移到SSL.这种行为非常奇怪,我们感到 ...

  10. IBM WebSphere Portal 6.0的主题与皮肤开发

    1 .1   入门: Portal 的主题与皮肤开发 要了解如何开发 P ortal 的主题,首先要了解 IBM WebSphere Portal 的显示流程. IBM WebSphere Porta ...

最新文章

  1. linux 笔记 一
  2. 21HTML5新特性
  3. NYOJ题目1048破门锁
  4. web前端入门学习 css(1)
  5. 单例模式示例_单例设计模式示例
  6. 微信小程序开发demo-地图定位
  7. css 浮动在最上层_《CSS 知识总结》
  8. python中随机生成数字生成对了是猜对了_python入门(一) 一个猜随机数小游戏...
  9. 高效使用电脑,Fence和Direct Folder
  10. eclipse hibernate mysql_[s2sh]_3_hibernate与mysql还有eclipse的笔记
  11. Android游戏源码的分析、疑问与交流
  12. 阿里云服务器如何隐藏真实ip
  13. H5微信分享、自定义微信分享
  14. 2019BJFU 网站设计(孙俏-web前端开发)实验代码-181002222
  15. mysql报错error during_MySQL数据库之MYSQL报Fatal error encountered during command execution.错误的解决方法...
  16. 什么牌子的蓝牙耳机耐用?2023年最值得入手的蓝牙耳机分享
  17. Chrome 收藏夹
  18. 压缩包的加密、去除密码、解密
  19. pwn的学习8 leg
  20. 支付宝小程序使用扩展组件安装

热门文章

  1. 什么是多线程,锁,死锁,怎么避免死锁(转)
  2. NetworkComms.Net github下载地址
  3. jquery层级原则器(匹配前一个元素后的下一个元素,必须是挨着的)
  4. Nginx PageSpeed模块配置和使用
  5. 【权值分块】bzoj1588 [HNOI2002]营业额统计
  6. linux命令完整篇
  7. http服务器和application服务器区别
  8. IntelliJ IDEA如何去掉xml文件背景色
  9. STC学习:485双机通信
  10. php 处理eml,PHP读取、解析eml文件及生成网页的方法示例