随笔分类 - Java
摘要:题目:输入一颗二叉树和一个整数,打印出二叉树中节点的值的和为输入整数的是所有路径。从树的根节点开始往下一直到叶节点所经过的节点形成一条路径。
阅读全文
摘要:重载:发生在同一个类中,方法名必须相同,参数类型不同、个数不同,顺序不同,方法返回值和修饰符可以不用,发生在编译时。 重写:发送在父子类中,方法名,参数列表必须相同,返回值范围小于等于父类,抛出的异常范围小于等于父类,访问修饰符范围大于等于父类;如果父类的方法访问修饰符为private,则子类就不能
阅读全文
摘要:在虚拟机发生内存回收时在输出设备显示信息 1、程序计数器 程序计数器是一块比较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器。 多线程时,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间计数器互不影响,独立存储。 2、栈 线程私有,声明周期和线程相
阅读全文
摘要:MD5消息摘要算法,属于Hash算法一类。MD5算法对输入任意长度的消息进行运行,产生一个128位的消息摘要。 算法原理: 对消息进行数据填充,使消息的长度对512取模得448,设消息的长度为X,即满足X mod 512 = 448。根据此公式得到需要填充的数据长度。 填充的方法:在消息后面进行填充
阅读全文
摘要:Collection 1、list ArrayList:Object数据 Vector:Object数据 LinkedList:双向链表 2、Set HashSet(无序,唯一):底层是HashMap实现 LinkedHashSet:LinkedHashSet继承HashSet,并且内部通过Link
阅读全文
摘要:1、底层数据结构: JDK1.7的ConcurrentHashMap底层使用分段的数据+链表实现,JDK1.8采用的数据结构和HashMap1.8的结构一样。数据+链表/红黑二叉树。 Hashttable和JDK1.8之前的HashMap的底层数据结构类似都是采用数据+链表的形式,数组是HashMa
阅读全文
摘要:HashSet底层是基于HashMap实现的。HashSet的源码非常少,因为除了clone()方法、writeObject()方法、readObject()方法是HashSet自己实现的,其他方法都是直接调用HashMap中的方法。 HashSet和HashMap对比 1、HashSet实现了Se
阅读全文
摘要:1、hadoop源码下载 下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/ 2、我们看一下hadoop源码中提供的一个程序WordCount Map()阶段 其中的42-55行,MapReduce程序需要继承org.apa
阅读全文
摘要:1、首先启动hadoop 2、建立maven工程 在当前目录下,会出现out文件
阅读全文
摘要:1、安装maven 1.1 下载maven 1.2 解压到本地的目录下 1.3 将meven的安装目录加入到/etc/profile文件中 1.4 运行命令maven -verson 验证是否安装成功 2、设置maven的settings.xml文件 2.1 修改本地仓库的位置 2.2 修改镜像源
阅读全文
摘要:程序:含有指令和数据的文件,被存储在磁盘或其他的数据存储设备中,也就是说程序是静态的代码。 进程:程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序就是一个进程从创建、运行到消亡的过程。 简单来说,一个进程就是一个执行中的程序,它在计算机中一个指令接着一个指令执行着,同
阅读全文
摘要:java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 静态编译:在编译时确定类型,绑定对象。 动态编译:在运行时确定类型,绑定对象。 反射机制的优
阅读全文
摘要:首先看一下按值传递和按引用传递的区别?? 按值传递:方法接收的是调用者提供的值 按引用传递:方法接收的是调用者提供的变量地址 Java程序设计语言总是采用按值调用。也就是说方法得到的是所有参数值的一个拷贝。也就是说方法不能修改传递给他的任何参数变量的内容。 下面通过3个例子说明 例子1 结果: 通过
阅读全文
摘要:首先需要配置上面画红框的几个文件 1、core-site.xml文件 2、hdfs-site.xml文件 3、yarn-stie.xml文件 4、mapred-site.xml文件 5、hadoop-env.sh文件 二、启动hadoop运行环境 2.1 首先初始化一下hadoop文件系统 2.2
阅读全文
摘要:一、首先安装Java 1.1下载Java的Linux版本 1.2解压到一个目录下,创建/soft目录 1.3配置java的配置文件 在打开的文件末尾加入下面 编辑完了以后,关闭文件,并且生效 二、下载安装Hadoop 这里注意一点,不能再windows环境下下载完再拖到虚拟机的ubuntu环境下,而
阅读全文
摘要:什么是解释器模式?? 举个例子 假设现在有一个业务需求如下: 输入一个模式公式(加减运算),然后输入模型中的参数,运算出结果。 设计要求: 1、公式可以运行时编辑,并且符合正常的算术书写方式。 2、高扩展性 抽象表达式类 变量解释器类 抽象运算符号解释器类 加法解释器类 减法解释器类 解释器封装类
阅读全文
摘要:浅拷贝和深拷贝 在具体解释Java深拷贝和浅拷贝之前,我们先看个例子,代码如下: 下面看一下浅拷贝测试: 这里java做了一个偷懒的拷贝动作,Object类提供的clone()方法只是提供了拷贝本地对象,其对象内部的数组、引用对象等都不拷贝,还是指向原生的内部元素地址,这种拷贝称为浅拷贝。 那么下面
阅读全文
posted @ 2019-01-07 22:53
林木声
摘要:java集合框架中的Hashtable和HashMap的区别? HashMap是数组和链表的结构体。 当我们往hashmap中put元素的时候,先根据key的hash值得到这个元素在数组中的位置(即下标),然后就可以把这个元素放到对应的位置中了。 如果这个元素所在的位子上已经存放有其他元素了,那么在
阅读全文

浙公网安备 33010602011771号