
JAVA提高篇
文章平均质量分 58
Anstrue
小码渣
展开
-
Join与CountDownLatch
join方法Thread中,join()方法的作用是调用线程等待该线程完成后,才能继续用下运行。public class TestJoin { public static void main(String[] args) { Thread t = new Thread(new Runnable() { @Override原创 2017-07-20 17:06:21 · 338 阅读 · 0 评论 -
编程题目的简单练习
一、字符串中第一个只出现一次的字符import java.util.Set;import java.util.TreeMap;/** * Created by admin on 2017/8/10. */public class recordFirst { @Test public void test(){ char c = getFirst("ab原创 2017-08-10 14:31:52 · 309 阅读 · 0 评论 -
哲学家吃饭问题(资源加锁和超时释放)
public class Resourcelocking extends Thread{ private static int[] chopstick = { 1, 1, 1, 1, 1 }; private int i; public Resourcelocking(int i) { this.i = i; } @Override原创 2017-08-22 10:15:34 · 560 阅读 · 0 评论 -
Int和String的互换(记百度视频面试经历)
百度视频面一面首先是一个简单的自我介绍,手边放了提前准备的发言稿,bulabula说了一会,面试官小哥哥问了一下实习的经历(太水,都不愿意问,应该)然后就进入了coding环节。第一个问题:Int转String听到这个问题蛮高兴的,因为之前视频面试饿了么的时候正好做过,可惜没有好好总结。我选择了先些简单的,在逐步使用各种TestCase的方法。最简单的public int pasre(原创 2017-08-13 20:59:26 · 958 阅读 · 0 评论 -
动态代理
一、静态代理先看代码:public interface Movable { void move();}class Tank implements Movable { @Override public void move() { System.out.println("Tank is Moving....."); try {原创 2017-07-31 11:08:51 · 527 阅读 · 0 评论 -
Java标准输入/输出 重定向
Java的标准输入/输出分别通过System.in和System.out来代表,在默认的情况,当程序通过System.in来获得输入时,实际上是通过键盘获得输入。当程序通过System.out执行输出时,程序总是输出到屏幕。在System类中提供了三个重定向标准输入/输出的方法static void setErr(PrintStream err) 重定向“标准”错误输出流s原创 2017-06-22 09:34:41 · 838 阅读 · 0 评论 -
深入理解JVM--class类文件结构
一、平台无关性 Java是与平台无关的语言,这得益于Java源代码编译后生成的存储字节码的文件,即Class文件,以及Java虚拟机的实现。不仅使用Java编译器可以把Java代码编译成存储字节码的Class文件,使用JRuby等其他语言的编译器也可以把程序代码编译成Class文件,虚拟机并不关心Class的来源是什么语言,只要它符合一定的结构,就可以在Java中运行。Java语言中的各原创 2017-07-17 20:10:06 · 379 阅读 · 0 评论 -
深入JVM内存区域
一、JVM内存区域划分 程序计数器 程序计数器(Program Counter)是是一块较小的区域,它的作用可以看做是当前线程所执行的字节码的行号指示器。在虚拟机的模型里,字节码指示器就是通过改变程序计数器的值来指定下一条需要执行的指令。分支,循环等基础功能就是依赖程序计数器来完成的。 由于java虚拟机的多线程是通过轮流切换并分配处理器执行时间原创 2017-07-20 21:01:29 · 276 阅读 · 0 评论 -
JavaComplier的使用
JDK1.6提供了JavaCompiler类,此类可以允许开发人员编译java文件为class文件。import javax.tools.JavaCompiler;import javax.tools.JavaCompiler.*;import javax.tools.StandardJavaFileManager;import javax.tools.ToolProvider;impor原创 2017-07-31 09:52:16 · 2198 阅读 · 0 评论 -
JAVA反射入门
Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。一、关于Class 1、Class是一个类,一个描述类的类(也就是描述类本身),封装了描述方法的Method,描述字段的Filed,描述构造器的Constructor等属性原创 2017-07-08 11:17:23 · 346 阅读 · 0 评论 -
五种Map集合简介
1、HashMap的底层实现这里简单提一下,HashMap的底层实现是一个哈希表。当然,这是一个性能比较高的哈希表,哈希表的长度增长、散列算法等都进行了优化。2、HashMap和HashTable的区别二者实现的功能是相似的,只在一些小的方面有区别:HashMap是非线程安全的,可以接受null作为键或者是值,而HashTable使用了Synchronous关键字,因此是线程安全的原创 2017-03-03 15:46:08 · 1589 阅读 · 0 评论 -
深入HashCode方法
最近再看HashMap的源码,下面是一点点随笔主要是在 深入HashCode方法 这篇文章的基础上做了修改如有侵权,请作者及时联系我为什么HashCode对于对象是如此的重要? 一个对象的HashCode就是一个简单的Hash算法的实现,虽然它和那些真正的复杂的Hash算法相比还不能叫真正的算法,但如何实现它,不仅仅是程序员的编程水平问题,更是关系到你的原创 2017-02-18 21:14:44 · 246 阅读 · 0 评论 -
JAVA提高篇--NIO
Java NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java 1.4开始),Java NIO提供了与标准IO不同的IO工作方式。Java NIO 由以下几个核心部分组成:Channels、Buffers、Selectors原创 2017-07-17 20:30:20 · 347 阅读 · 0 评论 -
JAVA提高篇--java.util.concurrent
java.util.concurrent原创 2017-07-17 20:32:20 · 339 阅读 · 0 评论 -
JAVA管道流
JAVA管道流原创 2017-07-17 20:41:56 · 411 阅读 · 0 评论 -
JAVA集合类--几种特殊的Queue
一、优先级队列百度百科定义:优先级队列 是不同于先进先出队列的另一种队列。每次从队列中取出的是具有最高优先权的元素。维基百科的定义也可以看看:https://en.wikipedia.org/wiki/Priority_queue二、JAVA语言对优先级队列的支持实现方式查看JDK源码,可以发现 public PriorityQueue(Compara原创 2017-08-04 20:42:21 · 4257 阅读 · 0 评论