Java笔记
日常遇到Java问题总结
猿小二
程序员之所以犯错误,不是因为不懂,而是自认为什么都懂。
展开
-
Java笔记之线程池
什么是线程池?我们可以将java的线程池简单的理解为一个带容器的工具类,提供线程创建、线程重用、线程销毁、任务管理等功能。为什么要使用线程池?在java虚拟机运行过程中,创建线程的代价是昂贵的。系统中的每个进程有自己独立的内存空间,而线程也同样需要。在JVM中默认一个线程需要使用256k~1M的内存,这取决于32位还是64位操作系统,具体数值不必深究,随着JVM版本的变化,这个默认值可能发生变更,我们只需要知道线程创建是需要申请并占用内存的。使用常规方式new Thread()创建线程,除了增加创原创 2020-06-30 17:28:58 · 162 阅读 · 0 评论 -
Java基础问题收集
Java基础1.面向对象的特点抽象、继承、封装、多态2.基本类型和封装类基本类型 封装类int Integerboolean Booleanchar Characterbyte Byteshort Shortlong Longfloat Floatdouble Double引用类型和原始类型具有不同的特征和用法,包括:大小和速度问题,这种类型以哪原创 2014-09-09 15:45:52 · 529 阅读 · 0 评论 -
Java对象的创建过程
Java对象的创建过程总结如下:假设有个名为Dog的类 1.当首次创建型为Dog的对象时(构造器可以看成静态方法),或者Dog类的静态方法/静态域首次被访问时,Java解释器必须查找类路径,以定位Dog.class文件。 2.然后载入Dog.class(这将创建一个Class对象),有关静态初始化的动作都会执行。因此,静态初始化只在Class对象首次加载的时候进行一次。转载 2014-09-09 16:23:06 · 442 阅读 · 0 评论 -
Java笔记之Calendar使用
Calendar cl = Calendar.getInstance(); System.out.println(cl.toString()); System.out.println("年:" + cl.get(Calendar.YEAR)); System.out.println("月:" + cl.get(Calendar.MONTH));原创 2015-04-16 11:16:53 · 417 阅读 · 0 评论 -
Java笔记之MD5加密
没什么好说的,就是利用java库将java字符串转成加密后十六进制字符串输出 public static String MD5(String strSrc) { try { MessageDigest md = MessageDigest.getInstance("MD5"); byte[] bt = strSrc.getBytes(原创 2015-06-30 11:29:27 · 396 阅读 · 0 评论 -
Java笔记之正则表达式
[正则表达式]文本框输入内容控制 整数或者小数:^[0-9]+.{0,1}[0-9]{0,2}只能输入数字:”[0−9]∗ 只能输入数字:”^[0-9]*”。 只能输入n位的数字:”^\d{n}”。只能输入至少n位的数字:”\dn,”。 只能输入至少n位的数字:”^\d{n,}”。 只能输入m~n位的数字:。”^\d{m,n}”只能输入零和非零开头的数字:”(0|[1−9][0−9]∗原创 2016-02-19 11:07:33 · 299 阅读 · 0 评论 -
Java笔记之线程池
1、new thread的弊端 最近的项目中老是用到了线程,由于很习惯性的使用了Thread和handler,但是在网上浏览了一些文章博客后才发现。原来new Thread的弊端也是挺多的嘛。你的代码是否也和下面的一样呢? new Thread(new Runnable(){ @override public void run(){ //你自己的操作 } }).start(原创 2015-07-27 18:01:24 · 306 阅读 · 0 评论 -
Java笔记之socket中的SSL
本文根据Java实现 SSL双向认证这篇文章验证后编写,摘录了其中很多内容。常见的SSL验证较多的只是我们验证服务器是否是真实正确的,所谓的SSL单向认证。实际中,我们有可能还要验证客户端是否符合要求,也就是给我们每个用户颁发一个证书,且每个数字证书都是唯一的,不公开的。这样就能通过这个数字证书保证当前访问我服务器的这个用户是经过服务器认可的,其他人不可访问。双向认证 从第一个层面上,确保了服务器与原创 2016-07-27 16:53:37 · 4004 阅读 · 1 评论