java
potomator
这个作者很懒,什么都没留下…
展开
-
关于Java调用exe,bat
在写代码的过程中遇到了一些问题,特此备忘。not Mapping首先,是mapping无法映射,这点是个很很少见的问题。项目的热部署,需要重新刷新, 无法自动加载,所以要去把Tomcat中的项目手动删除,包括两个文件夹 D:\code\apache-tomcat-7\webapps D:\code\apache-tomcat-7\work\Catalina\localhost环境变量的问题首原创 2016-08-01 20:41:04 · 364 阅读 · 0 评论 -
单例模式的5种实现
概要:主要有以下五种,除了4和5 ,安全与否取决于是否加synchronized关键字,加了之后肯定对效率肯定有影响懒汉饿汉二次检查静态内部类(只加载一次) 以上四种都存在2个问题 会被反射的setAccessible(true)破坏单例模式; 反序列化时会破坏单例 解决方式如下:单元素枚举(最优) //懒汉 class LazySingleton{原创 2017-08-09 17:33:38 · 245 阅读 · 0 评论 -
创建private构造函数的对象
getConstructor()和getDeclaredConstructor()区别:getDeclaredConstructor(Class<?>... parameterTypes)//返回指定参数的构造器,包括public的和非public的,当然也包括private的。getDeclaredConstructors()返回所有构造器。getConstructor(Class<?>..原创 2017-08-09 10:20:49 · 642 阅读 · 0 评论 -
eclipse设置虚拟机参数,以及memoryAnalyzer的使用
设置虚拟机参数 点击:run–>run configurations 进入如图页面。 利用HeepDump分析内存溢出使用Eclipse Memory Analyzer得到:HeepDump分析内存溢出首先需要设置:jvm参数–XX:-HeapDumpOnOutOfMemoryError可以让JVM在出现内存溢出是Dump出当前的内存转储快照; Heap Dump是堆转储原创 2017-05-04 15:47:17 · 1907 阅读 · 0 评论 -
ConcurrentHashMap多线程下比HashTable效率更高
点题:为什么 ConcurrentHashMap在多线程下效率更高? HashTable使用一把锁处理并发问题,当有多个线程访问时,需要多个线程竞争一把锁,导致阻塞 ConcurrentHashMap则使用分段,相当于把一个HashMap分成多个,然后每个部分分配一把锁,这样就可以支持多线程访问原创 2017-05-04 14:19:03 · 4028 阅读 · 0 评论 -
Java强引用、 软引用
强引用StrongReference 软引用(SoftReference)原创 2017-04-21 13:45:08 · 209 阅读 · 0 评论 -
ConcurrentLinkedQueue读写
cas算法 ConcurrentLinkedQueue原创 2017-04-19 20:06:34 · 289 阅读 · 0 评论 -
Java内部类
Java内部类是Java中比较重要的一部分,准备多花几天学习下。 以下是Java内部类的一些示例: 1、 在内部类中调用外部类和在外部类中调用内部类//package innerClass;public class InnerClass { private String name="huangbiao"; class demo{ public void原创 2016-09-06 19:57:45 · 208 阅读 · 0 评论 -
排序,列出数组中的前五和后五
时间复杂度n*k/2,对一串数中排列出前5和后5,前十个冒泡排序,后面的堆排序。降低了时间复杂度。 传入二维字符串数组,一个还是name一个是要排列的数。 /** * 建立而二维数组,排序前五个和后五个 * @param con 二维数组,名字和数据 * @return 前5个最小,后5个最大,大小为10的数组 */ public String [][原创 2016-09-21 13:46:17 · 838 阅读 · 0 评论 -
Java Thread学习之路_interrupt
Java中的数组是个重点,虽然平时都不一定用得上,当我使用interrupt方法时,遇到了一个问题。interrupt有两个方法可以来判断线程的状态量。分别是:interrupted:执行完毕会清除状态,在第二次调用时会置为false;isinterrupted:执行完不会改变.我遇到的问题正是和这两个方法有关,下面为测试代码:package com.thread;class Some ext原创 2016-09-23 14:29:16 · 383 阅读 · 0 评论 -
MavenHelloWorld
maven基础配置和含义 Maven可以帮助我们搭建项目,可以更改更方便的开发项目,我学习maven的原因是为了更方便的导入Jar以下为其基本配置文件: <?xml version="1.0" encoding="utf-8"?> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apa原创 2016-08-23 20:56:32 · 275 阅读 · 0 评论 -
Selenium入门
最近测试中用到了Selenium,我感觉到非常不合适,因为,EasyUI使用的是动态ID,而Selenium需要根据Xpath或者id找对应的页面元素,用EasyUI就表示,大部分情况下,你都是不能用id得到的,只能通过xpath。虽然出现了很多问题,不过还是写完了。废话不多说了,开始主题。 首先 Jar包和chromeDriver,IEDriver,这里, 密码:fw0p selenium是非原创 2016-08-11 16:57:21 · 1357 阅读 · 0 评论 -
Think in java中的final
fianl在Java中代表着不可更改,但是今天看到一点很奇妙的代码 public class FinalDemo { final int i= count++; static int count = 1; } 这里的这种代码是对的,因为会有final处的count也是一个引用,当然必须定义static,引用不变,但引用内的值改变了。page16原创 2016-08-23 07:51:29 · 267 阅读 · 0 评论 -
Java多态
很多人将多态理解为重写和重载,在校招那段时间我也是这么认为地,那段时间为了应付面试,笔试,看了很多Java面试的书,上面很多都是以篇概全的死概念,让我曲解了很多,最近工作了,有时间巩固下基础,所以就在读一遍Java神书,对于多态又有了一番理解多态,是Java的核心概念,继承和封装可以说都是为了这一概念服务的。 核心是:不同的消息根据发送对象的不同采取不同的行为原创 2016-08-30 17:51:46 · 193 阅读 · 0 评论 -
Linux 下用Java重启Tomcat
linux下重启Tomcat的步骤。 首先需要部署Tomcat和jdk步骤在这里 主要通过命令窗口执行,在Java中只需要写一些简单的代码就足够了 String linuxCmd="/usr/tomcat/bin/reboot.sh"; try { String[] cmdd = { "/bin/sh", "-c", linuxCmd }; proc原创 2016-08-03 12:43:58 · 2525 阅读 · 0 评论 -
阅读Java String源码遇到的问题
String源码为什么contentEquals要加sunchronized,有什么意义吗public boolean contentEquals(CharSequence cs) { // Argument is a StringBuffer, StringBuilder if (cs instanceof AbstractStringBuilder) {原创 2017-08-05 13:23:12 · 367 阅读 · 0 评论