1、什么是闭包闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。闭包的特点:1. 作为一个函数变量的一个引用,当函数返回时,其处于激活状态。2. 一个闭包就是当一个函数返回时,一个没有释放资源的栈区。简单的说,Javascript允许使用内部函数—即函数定义和函数表达式位于另一个函数的函数体内。而且,这些内部函数可以访问它们所在的外部函数中...
java实现全排列输出转自:http://easonfans.iteye.com/blog/517286最近在找工作,面试java程序员或者软件工程师,在笔试的时候常常见到这么一道题:全排列
的输出数组(常常要求是整数),其实这道题不难,主要是递归调用,在baidu或者google上已经有很多人提出了解法,但是大部分可读性很差,让我们
莘莘学子根本就记不住。我来简单的说一下:其实这个问题的解法基本思路是这样的:递归但是我们在使用递归的时候要注意结束条件,...
任务说明:生产者(Productor)将产品交给店员(Clerk),而消费者(Customer)从店员处取走产品,店员一次只能持有固定数量的产品(比如:20),如果生产者试图生产更多的产品,店员会叫生产者停一下,如果店中有空位放产品了再通知生产者继续生产;如果店中没有产品了,店员会告诉消费者等一下,如果店中有产品了再通知消费者来取走产品。使用Runnable接口完成该任务,代码如下:package testThread;/*共享数据*/
class Clerk{int produc...
JWT(一):认识 JSON WebTokenJWT(二):使用 Java 实现 JWT介绍原理在上篇《JWT(一):认识 JSON Web Token》已经说过了,实现起来并不难,你可以自己写一个 jwt 工具类(如果你有兴趣的话)当然了,重复造轮子不是程序员的风格,我们主张拿来主义!JWT 官网提供了多种语言的 JWT 库,详情可以参考 https://jwt.io/#debugger 页面下半部分建议使用 jjwt库 ,它的github地址 https://github.com/jwtk/jjwtjjwt 版本 0.10.7,它和 0.9....
原型链: 构造函数中都有一个prototype属性指针,这个指针指向原型对象,而创建的实例也有指向这个原型对象的指针__proto__。当实例查找方法时先在实例上找,找不到再通过__proto__到原型对象上查找。如果原型对象是另一个类型的实例,那么原型对象包含一个指向另一个原型对象的指针、另一个原型对象中也包含指向另一个构造函数的指针。原型连继承function superValue(){this.superValue = "superValue";
}superValue.prototype...
需求描述:
前段时间写了一篇博客《Java实现对文本文件MD5加密并ftp传送到远程主机目录》,实现了一部分的业务需求。然而有些业务可能不止传送一个文件,有时候客户需要传多个文件,原有系统并不支持,因此现在需要在这个的基础上新开发一个功能,要求可以实现该业务场景,传送多个文件到远程主机指定的目录上。
业务梳理:
对于此需求,我有两个想法,想法一是通过点击文件上传按钮的选择文件的时候,设置让用户选择多个文件,Jav...
这几天主要是狂看源程序,在弥补了一些以前知识空白的同时,也学会了不少新的知识(比如 NIO),或者称为新技术吧。
线程池就是其中之一,一提到线程,我们会想到以前《操作系统》的生产者与消费者,信号量,同步控制等等。
一提到池,我们会想到数据库连接池,但是线程池又如何呢?
建议:在阅读本文前,先理一理同步的知识,特别是syncronized同步关键字的用法。
关于我对同步的认识,要缘于大三年的一本书,书名好像是 Java 实战...
package arithmetic.graphTraveral;import java.util.LinkedList;import java.util.Queue;/** * 这个例子是图的遍历的两种方式 * 通过它,使我来理解图的遍历 * Created on 2013-11-18 * @version 0.1 */public class GraphTraveral{ // 邻接矩阵存储图 // --A B C D E F G H I // A 0 1 0 0 0 1 1 0 0 // B 1 0 1 0 0 0 1 0 1 // C 0 1 0 1 0 0 0 0 1 // D 0 0 1 0 1 0 1 1 1 // E 0 0 0...
最近在学习最小生成树时,用到了优先队列这个结构,琢磨这自己也来写下,搞了半天终于写出来了,于是就记录下import java.util.ArrayList;class MyHeap<Type extends Comparable<Type>>{private ArrayList<Type> data;privateint MaxSize;privateint size;public MyHeap() {this.MaxSize=0;this.size=0;}publicboolean add(Type Elem) {if(this.size>=this.MaxSize) {MaxSize=MaxSize+((MaxSize>>1)>1?(MaxSize>>1):1);ArrayList<...
冒泡排序:http://blog.csdn.net/pzhtpf/article/details/7560294 1publicclass bubbleSort { 2public bubbleSort(){ 3int a[]={49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,99,98,54,56,17,18,23,34,15,35,25,53,51}; 4int temp=0; 5for(int i=0;i<a.length-1;i++){ 6for(int j=0;j<a.length-1-i;j++){ 7if(a[j]>a[j+1]){ 8 temp=a[j]; 9 a[j]=a[j+1];
10 a[j+1]=temp;
11 ...
缓存是Java中主要的内容,主要目的是缓解项目访问数据库的压力以及提升访问数据的效率,以下是通过Map实现java缓存的功能,并没有用cache相关框架。一、缓存管理类 CacheMgr.java package com.henu.util;import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;/*** 缓存管理类* * @author Administrator* */publicclass CacheMgr {...
欢迎拍砖~在数据二进制和byte互相转换的地方方法写得有点挫,不知道有没有更好的方法~顺便复习了java的一些基础东西,如位操作,原码反码补码可以在这篇blog里学习到详细的知识点:http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html直接上代码吧,知识点在注释上编码器: 1package jdbc.pro.lin;2 3import java.util.HashMap;4import java.util.Map;5 6publicclass MyBase64Encoder {7 8privatestaticf...
package JCC;//信1705-3 20173681 靳晨晨import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.PrintWriter;import java.util.Scanner;import java.util.StringTokenizer;import java.io.*;public class AccountManager {public static void main(String[] args)throws IOException{ Account p=new Account("0","0","0",0,"0",0,0)...
一、描述简单工厂模式又名静态工厂方法模式,是所有工厂模式中最简单的一个,它定义一个具体的工厂类来负责创建所有类的对象并初始化创建的对象,它主要由3部分组成:工厂类、抽象类、实现抽象类的具体类,然后通过客户端调用工厂类创建相应的对象。注意:简单工厂模式不属于GoF总结的23种设计模式,它是相当于初学java的HelloWorld案例,帮助初学者了解设计模式,增长信心的一个设计模式。二、简单工厂模式的优缺点优点:相对于直...
package com.stack;/** * @auther 付强 * @date 2020/2/13 - 13:08 */public class TestMystack { public static void main(String[] args) { //先创建一个栈 Mystack mystack = new Mystack(); //压入数据 mystack.push(9); mystack.push(8); mystack.push(7); mystack.push(6); mystack.push(5); System.out.println(mystack.pick()); System.out.pri...