读Thinking in Java(1~4)

浏览完Thinking in Java 1~4章,有几点新知识。

1. 关于写和如何执行一个Java程序。

2. 每个Java文件必须要有一个同名的类,该类中需要有一个main函数。

3. Foreach 语句。

for(float x: range(10))

4. label在break和continue的用法。没有goto语句。

5. Java对象的引用。java对象都要new到堆里。

6. Java变量定义,在一个作用范围内不能有同名。

7. javadoc的一些就介绍。

8. Java垃圾收集

9. 无符号移位>>>

10. java没有sizeof,在所有平台,普通变量的长度一致。

11. 所有Java对象的singly rooted单继承结构: Object

12. Java类可以先使用后声明。

13. Java一切都是类和对象。

时间: 2024-08-08 03:09:41

读Thinking in Java(1~4)的相关文章

读深入理解Java中的String(包括JVM)一文总结和提升

读深入理解Java中的String(包括JVM)一文总结和提升 摘要:String作为Java语言中的字符串模拟类,无论是实际的编程工作还是笔试面试过程,都需要我们都String类非常熟悉,对于String类的大部分字符串操作方法,都必须达到熟练运用的程度才行.但是,笔试和面试过程中,面试官往往喜欢问一些String特性相关的题目,来考察面试者对于String基础知识的掌握是否牢固.(本人尚未研读深入理解JVM这本书,分析JVM都是查看网上资料来分析的,若在接下来的内容有分析不到位的地方请见谅和

[笔记][思维导图]读深入理解JAVA内存模型整理的思维导图

本人记忆差,整理这个思维导图,相当于较认真的看了一遍,整个思维导图,基本上就是对原文的拷贝. 有了层级关系.和本人自己的一些理解.由于思维导图弄出来的图片大于100M了.所以就放出源文件, 更方便的阅读查阅.在csdn太穷了.下载2积分.有需要的希望意思意思.我也要去下载资料呢.(下载地址在最后) 有几点我觉得是看这个本书或则思维导图.你要明白的是: 1. 什么是内存可见性 2. 在java程序中,在底层执行的代码指令并不是完全按照顺序执行的-有重排序的存在 3. volatile 是一个和硬件

scala文件读取报错“java.nio.charset.MalformedInputException: Input length = 1”

今天写spark程序的时候遇到了一个问题就是,读取文件的时候报了一个错:"Exception in thread "main" java.nio.charset.MalformedInputException: Input length = 1" 读取文件的代码如下: 一看这个这个错"nio"错误,第一感觉就是读文件方法这里出了问题,于是点击去看了一下Source.fromFile这个方法的源码: 果然,这个方法的重载有好几个,但是每一都直接或间

读thinking in java的收获(二) --eclipse生成javadoc文档

最开始学习java语言的时候学过生成javadoc不过当时只是用windows命令行生成.读了这里的javadoc温故而知新发现其实我们做的项目就用到了一些注释,只是没有用eclipse 生成这份文档,通过查阅,最终补全了这份知识. 一.书中的代码: <pre name="code" class="java">//:object/HelloDate.java package unit2; import java.util.Date; /** * The

读代码学java:request.getParameterNames

1 protected Map<String, String> initRequestParams(HttpServletRequest request) { 2 Map<String, String> paramMap = new HashMap<String, String>(); 3 if (request == null) { 4 return paramMap; 5 } 6 Enumeration<?> paramNames = request.g

又读Thinking in Java

前几天又把Thinking in Java的第五章看了一遍,当然.又是收获多多,尽管没有去年第一次看到这本书时的兴奋--当时每天非常晚下班回宿舍后都是必看一点的,可是也捡起了不少忘掉的东西. 本章的标题是:初始化与清理 首先讲述了构造器的由来:在使用对象前,我们都必须确保该对象经过了初始化,那么能够在每一个类中定义一个方法:initialize()(这名字让人想到了非常多设计都用到了名为init()的这种方法),每次我们使用对象前都先调用一下此方法. 那么问题来了:假设我们忘记了调用怎么办呢?出

读《疯狂Java讲义》笔记总结三

1.初始化块 实际上初始化块是一个假象,使用javac命令编译Java类后,该Java类中的初始化块会消失--初始化块中代码会被 "还原" 到每一个构造器中,且位于构造器全部代码的前面. 2.p125-p128   自己主动装箱,自己主动拆箱不太懂 3.包装类 4.单例类 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravi

java读写文件,读超大文件

一直在处理爬虫,经常能遇到读写文件的操作,很多时候都是读写超大文件,记录如下: 一.读文件 import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException;

22、Java并发性和多线程-Java中的读/写锁

以下内容转自http://ifeve.com/read-write-locks/: 相比Java中的锁(Locks in Java)里Lock实现,读写锁更复杂一些.假设你的程序中涉及到对一些共享资源的读和写操作,且写操作没有读操作那么频繁.在没有写操作的时候,两个线程同时读一个资源没有任何问题,所以应该允许多个线程能在同时读取共享资源.但是如果有一个线程想去写这些共享资源,就不应该再有其它线程对该资源进行读或写(译者注:也就是说:读-读能共存,读-写不能共存,写-写不能共存).这就需要一个读/