java基础
feng_0207
这个作者很懒,什么都没留下…
展开
-
黑马程序员_关于java中的集合
1.当向 ArrayList 添加一个对象时,实际上就是将该对象放置到了 ArrayList 底层所维护的数组当中;当向 LinkedList 中添加一个对象时,实际上 LinkedList 内部会生成一个Entry 对象,该 Entry 对象的结构为:Entry{Entry previous;Object element;Entry nex原创 2014-10-30 19:59:42 · 308 阅读 · 0 评论 -
关于json操作
/** * 将json数组转化为Long型 * @param str * @return */ public static Long[] getJsonToLongArray(String str) { JSONArray jsonArray = JSONArray.fromObject(str);转载 2015-06-26 11:48:10 · 247 阅读 · 0 评论 -
反射访问私有成员和方法
Java的反射工具很强大,有句著名的话:No reflection ,no frameworks.工作中直到涉及到UT,才体会到它的重要性,现归纳整理一个小例子: 反射工具类: 1 import java.lang.reflect.Field; 2 import java.lang.reflect.InvocationTargetException; 3 i转载 2017-08-31 21:56:32 · 596 阅读 · 0 评论 -
java中静态内部类和非静态内部类的区别
内部类(Inner Class)和静态内部类(Static Nested Class)的区别:定义在一个类内部的类叫内部类,包含内部类的类称为外部类。内部类可以声明public、protected、private等访问限制,可以声明 为abstract的供其他内部类或外部类继承与扩展,或者声明为static、final的,也可以实现特定的接口。外部类按常规的类访问方式使用内部 类,唯一的差别是转载 2017-08-31 21:59:29 · 469 阅读 · 0 评论 -
Java线程池Executors
一 简述 线程池,作为一个管理一组同构工作线程的资源。接受提交的任务,利用线程池中的线程进行工作的处理。 在另一篇《Java多线程设计模式(4)线程池模式》利用非Executors描述了线程池基本构建过程,对于线程池基本机制进行了说明。由于Java类库中有Executor来专门用于线程池的管理的类,所以可以用Executor任务执行框架来实现线程池的构建。 Executor转载 2017-08-31 22:01:38 · 147 阅读 · 0 评论 -
JVM内存模型及内存分配过程
一、JVM内存模型JVM主要管理两种类型内存:堆(Heap)和非堆(Permanent区域)。1、Heap是运行时数据区域,所有类实例和数组的内存均从此处分配。Heap区分两大块,一块是 Young Generation,另一块是Old Generation: 1)在Young Generation中,有一个叫Eden Space的空间,主要是用来存放新生的对象,还有两个Su转载 2017-08-31 22:04:53 · 151 阅读 · 0 评论 -
HashMap与ConcurrentHashMap的区别
从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心。在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从此Map也有安全的了。ConcurrentHashMap具体是怎么实现线程安全的呢,肯定不可能是每个方法加synchronized,那样就变成了HashTable转载 2017-08-31 22:10:59 · 178 阅读 · 0 评论 -
深入并发包 ConcurrentHashMap
http://www.importnew.com/26049.html转载 2017-08-31 22:16:35 · 229 阅读 · 0 评论 -
线程安全的遍历list
遍历List的多种方式在讲如何线程安全地遍历List之前,先看看通常我们遍历一个List会采用哪些方式。方式一:for(int i = 0; i ) { System.out.println(list.get(i));}方式二:Iterator iterator = list.iterator();while(iterator.hasNext转载 2017-09-03 11:08:31 · 5792 阅读 · 1 评论 -
Java中的多线程你只要看这一篇就够了
引如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的“生产者,消费者模型”。很多人都转载 2017-09-03 11:57:10 · 293 阅读 · 0 评论 -
JAVA进阶----ThreadPoolExecutor机制
ThreadPoolExecutor机制 一、概述 1、ThreadPoolExecutor作为java.util.concurrent包对外提供基础实现,以内部线程池的形式对外提供管理任务执行,线程调度,线程池管理等等服务; 2、Executors方法提供的线程服务,都是通过参数设置来实现不同的线程池机制。 3、先来了解其线程池管理的机制,有助于正确使用,避免错误使用导致严重故障转载 2017-09-03 13:34:25 · 159 阅读 · 0 评论 -
java的动态代理机制详解
在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的一个原理,而AOP的原理就是java的动态代理机制,所以本篇随笔就是对java的动态机制进行一个回顾。在java的动态代理机制中,有两个重要的类或转载 2017-09-03 14:32:23 · 155 阅读 · 0 评论 -
JVM相关面试题及答案
题目: http://www.jsondream.com/2016/12/04/java-interview-question.html答案如下:1. 类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字段,他们的执行顺序答:先静态、先父后子。 先静态:父静态 > 子静态 优先级:父类 > 子类 静态代码块 > 非静态代码块 > 构造函数转载 2017-09-03 15:17:34 · 354 阅读 · 0 评论 -
ThreadLocal详解
ThreadLocal是什么 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影转载 2017-10-11 11:35:42 · 140 阅读 · 0 评论 -
java 常用的Java片段
1. 字符串有整型的相互转换String a = String.valueOf(2); //integer to numeric string int i = Integer.parseInt(a); //numeric string to an int 2. 向文件末尾添加内容BufferedWriter out = null; try { out = n转载 2015-01-30 15:58:13 · 248 阅读 · 0 评论 -
java Map 遍历
Map map = new HashMap(){}; map.put("a", "A"); map.put("b", "B"); map.put("c", "C"); //第一种 Set set = map.keySet(); Iterator it = set.iterator(); while(it.hasNext()){ String str = it.next().toString();原创 2015-01-30 15:37:37 · 216 阅读 · 0 评论 -
Java 中 properties文件的读取
http://www.cnblogs.com/xudong-bupt/p/3758136.html转载 2014-12-05 11:23:38 · 315 阅读 · 0 评论 -
java中的权限访问控制符
public, private, protected,以及不写时的区别说明:如果在修饰的元素上面没有写任何访问修饰符,则表示 friendly。[size=14.666666984558105px]作用域当前类同一包子孙类其他public√√√√protected原创 2014-11-07 14:35:17 · 378 阅读 · 0 评论 -
黑马程序员_Java中的流
从功能上分为两大类:输入流和输出流。• 从流结构上可分为字节流( 以字节为处理单位或称面向字节) 和字符流( 以字符为处理单位或称面向字符) 。• 字节流的输入流和输出流基础是 InputStream和OutputStream这两个抽象类, 字节流的输入输出操作由这两个类的子类实现。 字符流是Java 1. 1版后新增加的以字符为单位进行输入输出处理的流, 字符流输原创 2014-10-31 15:24:06 · 251 阅读 · 0 评论 -
黑马程序员_java各种排序
----------android培训 java培训 ---------期待与您交流冒泡排序public class BubbleSortTest{public static void bubbleSort(int[] array){for(int i = 0; i {for(int j = 0; j {if(array[j] > array[j +原创 2014-10-31 12:50:54 · 312 阅读 · 0 评论 -
黑马程序员_Java中字符串解析
------------------android培训 java培训----------------期待与您交流24. 对于String 类的equals()方法来说,它是判断当前字符串与传进来的字符串的内容是否一致。25. 对于 String 对象的相等性判断来说,请使用 equals()方法,而不要使用==。26. String 是常量,其对象一旦原创 2014-10-31 14:39:34 · 294 阅读 · 0 评论 -
黑马程序员_关于java字符串反转的几种方案
1, public static String reverse(String orig) { char[] s = orig.toCharArray(); int n = s.length - 1; int halfLength = n / 2; for (int i = 0; i char temp = s[i]; s[i] = s[n - i]原创 2014-10-30 20:10:06 · 283 阅读 · 0 评论 -
黑马程序员_二分查找
默认array已排序public static int binarySearch(int[] array, int value){int low = 0;int high = array.length - 1;int middle; while(low {middle = (low + high) / 2; for(int i = 0; i {S原创 2014-10-31 12:58:27 · 322 阅读 · 0 评论 -
黑马程序员_访问修饰符 static final
访问修饰符( access modifier)。1)public(公共的): 被public 所修饰的属性和方法可以被所有类访问。2)protected(受保护的): 被protected 所修饰的属性和方法可以在类内部、相同包以及该类的子类所访问。3)private(私有的): 被private 所修饰的属性和方法只能在该类内部使用4)原创 2014-10-31 11:39:16 · 392 阅读 · 0 评论 -
黑马程序员_问题总结(持续更新)
关于ajax传值$.ajax({url : url, //表单提交目标 commondtype : "POST", //表单提交类型 dataType : "JSON",data : "net=" + net + "&yearUsef=" + yearUsef, //表单数据success : function(result) {}});后台取值:Strin原创 2014-10-30 20:19:12 · 407 阅读 · 0 评论 -
黑马程序员_毕向东java基础视频第五天
关于构造代码块:每个构造函数执行之前都会执行到的代码块{System.out.println(“构造代码块”);}this:代表本类的对象,this代表它所在函数所属对象的引用。也就是说是哪个对象在调用this所在函数,就是指哪个对象。 this关键字在构造函数中的使用:this语句 用于构造函数之间调用,且只能放在第一行class Person{原创 2014-11-03 12:22:09 · 449 阅读 · 0 评论 -
黑马程序员_毕向东java基础视频第六天
Static关键字:修饰符,修饰成员变量或成员函数每个对象都可访问到,static修饰的变量或函数成为类的变量或函数,而不是实例的变量或函数特有数据(非static变量)随对象存储 在堆内存当中内存中方法区 存放static修饰的变量或函数。Static特点:1,静态随着类的加载而加载,随着类的消亡而消亡,声明周期最长2,被所有对象所共享3,可以直接被类名调用原创 2014-11-03 12:22:58 · 580 阅读 · 0 评论 -
黑马程序员_毕向东java基础视频第七天
Java单继承,java将多继承关系改良,改为多实现 即接口Java支持多层继承,也就是支持一个继承体系如何使用一个继承体系的功能?想使用体系,先查阅体系父类的描述,因为父类中定义的是体系中的共性的方法功能,通过了解共性的功能,就可以知道该体系的基本功能,那这个体系就基本可以使用了。那么在具体调用时,要创建最子类的对象,因为1,有可能父类不能创建对象,2,创建子类对象,可使用基原创 2014-11-03 12:24:38 · 596 阅读 · 0 评论 -
黑马程序员_java中线程
------------------android培训 java培训----------------期待与您交流原创 2014-10-31 17:08:34 · 329 阅读 · 0 评论 -
黑马程序员_java集合框架简单总结
java中集合框架共有三大接口分别为 Collection接口, Iterator接口,Map接口1,Collection继承结构Collection |----List 接口,不能被实例化 允许有重复内容,有序 |----ArrayList 非线程安全 |----LinkedList 线程安全原创 2014-11-03 17:41:51 · 299 阅读 · 0 评论 -
ThreadLocal再论
首先,ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。 另外,说ThreadLocal使得各线程能够保持各自独立的一个对象,并不是通过ThreadLocal.set()来实现的,而是通过每个线程中的new 对象 的操作转载 2017-10-14 11:59:55 · 153 阅读 · 0 评论