JAVA THINGKING (一)】的更多相关文章

保存数据位置: (1) 寄存器.这是最快的保存区域,因为它位于和其他所有保存方式不同的地方:处理器内部. (2) 堆栈.驻留于常规RAM(随机访问存储器)区域,这是一种特别快.特别有效的数据保存方式,仅次于寄存器.创建程序时,Java编译器必须准确地知道堆栈内保存的所有数据的“长度”以及“存在时间”.Java“对象句柄”以及“基本数据类型”也保存在堆栈,基本数据包括:boolean/char/byte /short/int/long/float/double,但Java对象并不放到其中. (3)…
1. 基本数据员的默认值 Boolean false Char '\u0000'(null) byte (byte)0 short  (short)0 int  0 long 0L float 0.0f double 0.0d 2.static关键字 通常,我们创建类时会指出那个类的对象的外观与行为.除非用new创建那个类的一个对象,否则实际上并未得到任何东西.只有执行了new后,才会正式生成数据存储空间,并可使用相应的方法.但在两种特殊的情形下,上述方法并不堪用.一种情形是只想用一个存储区域来…
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /** * 需求:计算网页访问量前三名 * 用户:喜欢视频 直播 * 帮助企业做经营和决策 * * 看数据 */ object UrlCount { def main(args: Array[String]): Unit = { //1.加载数据 val conf:SparkConf = new Spa…
由于工作上的需求,要开始学习Android开发,所以先开始看一些Java方面的知识.学习从Thingking in Java开始,看了一下第一张,感觉真的是一本好书,希望自己努力把他看完,加油! 第一章的总结: 1.抽象过程:万物皆是对象.对象皆有其类型.特定类型的对象都可以接收同样的消息.程序是对象的集合,他们通过发送消息来告知彼此所要做的.每个对象都有自己所在的存储:对象具有状态.行为.标识: 2.每个对象都有一个接口: 3.每个对象都提供服务: 4.被影藏的具体实现:private.pro…
在说明finalize()的用法之前要树立有关于java垃圾回收器几个观点: "对象可以不被垃圾回收" : java的垃圾回收遵循一个特点, 就是能不回收就不会回收.只要程序的内存没有达到即将用完的地步, 对象占用的空间就不会被释放.因为如果程序正常结束了,而且垃圾回收器没有释放申请的内存, 那么随着程序的正常退出, 申请的内存会自动交还给操作系统; 而且垃圾回收本身就需要付出代价, 是有一定开销的, 如果不使用,就不会存在这一部分的开销. 垃圾回收只能回收内存, 而且只能回收内存中由…
工作2年多来一直也没有计划写自己的技术博客,最近辞职在家翻看<thingking in JAVA>,偶尔看到了生产者与消费者的一个经典的多线程同步问题.本人在工作中很少使用到多线程以及高并发方面的知识,正好回忆下以前学过的一些知识和代码,以经典的多线程问题生产者消费者问题为开篇. 先上一段经典的生产者与消费者的代码 class Product { private final int orderNum; public Product(int orderNum) { this.orderNum =…
JVM Analysis & Design The object-oriented paradigm is a new and different way of thingking about programming. Most of the analysis and design methodologies are intended to sovle the largest of problems. Remember that most projects don’t fit intot hat…
java中的异常涉及到父子类的问题,可以归纳为一句话:子类的构造函数抛出的异常必须包含父类的异常,子类的方法可以选择抛出“范围小于等于”父类的异常或不抛出异常. 1. 为什么构造函数必须抛出包含父类的异常? 在<thingking in java>中有这么一段话: 异常限制:当覆盖方法时,只能抛出在基类方法的异常说明中列出的那些异常 异常限制对构造器不起作用,你会发现StormyInning的构造器可以抛出任何异常,而不必理会基类构造函数所抛出的异常.然而因为必须构造函数必须以这样或那样的方式…
最近一直在闷头往前看<thingking in java> ,但是却由于赶了进度而忘记了初衷.当学到集合的时候,回头却发现,我连最基本的接口都不明白.查了一上午资料,现在明白例如一点点,写个备忘录吧,供以后修改和查看. 接口是什么? 我觉着<thingking in java>中的定义非常好,所谓接口,就是一个更高层次上的抽象,通过关键字interface产生一个完全抽象的类,不提供任何实现,只提供形式.所有与接口通讯的类只需知道接口中有什么样的方法存在即可,无需知晓其他问题. 这…
当程序中首次出现使用一个类A时, 无论是使用A的静态成员还是创建一个对象(声明一个A类对象不算), 那么类加载器就会首先对A进行加载, 在对A进行加载的过程中, 如果A有一个extends的父类B, 那么就先对这个B类进行加载, 如果B类还有父类, 就再加载B的父类,就这样层层向上加载, 直到加载Object基类为止,每个类在加载过程中完成了对该类的静态成员的默认初始化. 当Object类加载完成后, 就从Object类开始依次向下进行静态初始化直到A类, 然后执行A的静态初始化, 此时执行的静…