-
23种设计模式(2) java工厂模式
所属栏目:[Java] 日期:2020-12-14 热度:187
23种设计模式第二篇:java工厂模式 定义: 工厂模式是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的[详细]
-
23种设计模式(8) java外观模式
所属栏目:[Java] 日期:2020-12-14 热度:198
23种设计模式第八篇:java外观模式 定义: 为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 角色: 1、外观(Facade)角色 :客户端可以调用这个角色的方法。此角色知晓相关子系统的功能和责任[详细]
-
java编程实现优先队列的二叉堆代码分享
所属栏目:[Java] 日期:2020-12-14 热度:146
这里主要介绍的是优先队列的二叉堆Java实现,代码如下: package practice;import edu.princeton.cs.algs4.StdRandom;public class TestMain { public static void main(String[] args) { int[] a = new int[20]; for (int i = 0; i a.length; i++) { int te[详细]
-
23种设计模式(4) java生成器模式
所属栏目:[Java] 日期:2020-12-14 热度:115
23种设计模式第四篇:java生成器模式 定义: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。生成器模式利用一个导演者对象和具体建造者对象一个一个地建造出所有的零件,从而建造出完整的对象。 四个要素: Builder:生成器接[详细]
-
java集合中list的用法代码示例
所属栏目:[Java] 日期:2020-12-14 热度:180
List接口是Collection接口的子接口,List有一个重要的实现类--ArrayList类,List中的元素是有序排列的而且可重复,所以被称为是序列。 List可以精确的控制每个元素的插入位置,或删除某个位置元素,它的实现类ArrayList底层是由数组实现的。 List中有增删改[详细]
-
java集合中的list详解
所属栏目:[Java] 日期:2020-12-14 热度:140
1、List接口 该接口定义的元素是有序的且可重复的。相当于数学里面的数列,有序可重复 booleanaddAll(intindex,CollectionextendsEc);将指定集合中所有元素,插入至本集合第index个元素之后defaultvoidreplaceAll(UnaryOperatoroperator);替换集合中每一个元[详细]
-
Java实现生产者消费者问题与读者写者问题详解
所属栏目:[Java] 日期:2020-12-14 热度:180
1、生产者消费者问题 生产者消费者问题是研究多线程程序时绕不开的经典问题之一,它描述是有一块缓冲区作为仓库,生产者可以将产品放入仓库,消费者则可以从仓库中取走产品。解决生产者/消费者问题的方法可分为两类:(1)采用某种机制保护生产者和消费者之[详细]
-
Spring MVC通过添加自定义注解格式化数据的方法
所属栏目:[Java] 日期:2020-12-14 热度:54
springmvc 自定义注解 以及自定义注解的解析 一、自定义注解名字 @Target({ElementType.TYPE,ElementType.METHOD}) //类名或方法上@Retention(RetentionPolicy.RUNTIME)//运行时@component//自定义多个注解,且在一个类中添加两个或以上的,只需要加一个 否[详细]
-
Java线程之线程同步synchronized和volatile详解
所属栏目:[Java] 日期:2020-12-14 热度:169
上篇通过一个简单的例子说明了线程安全与不安全,在例子中不安全的情况下输出的结果恰好是逐个递增的(其实是巧合,多运行几次,会产生不同的输出结果),为什么会产生这样的结果呢,因为建立的Count对象是线程共享的,一个线程改变了其成员变量num值,下一个[详细]
-
Java中获取键盘输入值的三种方法介绍
所属栏目:[Java] 日期:2020-12-14 热度:118
程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这种情况我们就束手无策,请你看以下三种解决方法吧: 以下将列出几种[详细]
-
浅谈Java中的this作为返回值时返回的是什么
所属栏目:[Java] 日期:2020-12-14 热度:80
有时会遇到this作为返回值的情况,那么此时返回的到底是什么呢? 返回的是调用this所处方法的那个对象的引用,读起来有点绕口哈,有没有想起小学语文分析句子成份的试题,哈哈。 一点点分析的话,主干是“返回的是引用”; 什么引用呢?“那个对象的引用”;[详细]
-
Java线程的start方法回调run方法的操作技巧
所属栏目:[Java] 日期:2020-12-14 热度:188
面试中可能会被问到为什么我们调用start()方法时会执行run()方法,为什么我们不能直接调用run()方法? Java 创建线程的方法 实际上,创建线程最重要的是提供线程函数(回调函数),该函数作为新创建线程的入口函数,实现自己想要的功能。Java 提供了两种方法[详细]
-
Java逃逸分析详解及代码示例
所属栏目:[Java] 日期:2020-12-14 热度:101
概念引入 我们都知道,Java 创建的对象都是被分配到堆内存上,但是事实并不是这么绝对,通过对Java对象分配的过程分析,可以知道有两个地方会导致Java中创建出来的对象并一定分别在所认为的堆上。这两个点分别是Java中的逃逸分析和TLAB(Thread Local Alloca[详细]
-
Java中启动线程start和run的两种方法
所属栏目:[Java] 日期:2020-12-14 热度:167
一、区别 Java中启动线程有两种方法,继承Thread类和实现Runnable接口,由于Java无法实现多重继承,所以一般通过实现Runnable接口来创建线程。但是无论哪种方法都可以通过start()和run()方法来启动线程,下面就来介绍一下他们的区别。 start方法: 通过该方[详细]
-
浅谈图片上传利用request.getInputStream()获取文件流时遇到的问
所属栏目:[Java] 日期:2020-12-14 热度:184
图片上传功能是我们web里面经常用到的,获得的方式也有很多种,这里我用的是request.getInputStream()获取文件流的方式。想要获取文件流有两种方式,附上代码 int length = request.getContentLength();//获取请求参数长度。byte[] bytes = new byte[length][详细]
-
java 中的instanceof用法详解及instanceof是什么意思(推荐)
所属栏目:[Java] 日期:2020-12-14 热度:58
好,应大家的要求先给大家说下在JAVA程序中instanceof是什么意思 instanceof是Java的一个二元操作符,和==,,是同一类东东。由于它是由字母组成的,所以也是Java的保留关键字。它的作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据。[详细]
-
Java线程之程安全与不安全代码示例
所属栏目:[Java] 日期:2020-12-14 热度:66
作为一个Java web开发人员,很少也不需要去处理线程,因为服务器已经帮我们处理好了。记得大一刚学Java的时候,老师带着我们做了一个局域网聊天室,用到了AWT、Socket、多线程、I/O,编写的客户端和服务器,当时做出来很兴奋,回学校给同学们演示,感觉自己[详细]
-
myeclipse导出可运行jar包简介
所属栏目:[Java] 日期:2020-12-14 热度:144
该方式可以简单的导入第三方Jar包 1,右击项目,单击export=》java=》选第三个,Runnable Jar file (可执行的jar文件),Next。 2,选择launch configuration(程序入口配置),Exportdestination(导出目标) Library handing: 选择第一个 引用的jar包会整合[详细]
-
基于Spring中各个jar包的作用及依赖(详解)
所属栏目:[Java] 日期:2020-12-14 热度:153
先附spring各版本jar包下载链接http://repo.spring.io/release/org/springframework/spring/ spring.jar 是包含有完整发布模块的单个jar 包。但是不包括mock.jar,aspects.jar,spring-portlet.jar,and spring-hibernate2.jar 示例图片为Spring-2.5.6.jar的包[详细]
-
JavaAPI的使用方法详解
所属栏目:[Java] 日期:2020-12-14 热度:164
什么是Java类库 在编写程序的时候,通常有很多功能是通用的,或者是很基础的,可以用这些功能来组成更发杂的功能代码。比如文件操作,不同程序对文件的操作基本都是一样的,打开文件,关闭文件,读取文件里面的数据,往文件中写数据等等。所不同的仅仅是文件[详细]
-
Java图形化界面设计之容器(JFrame)详解
所属栏目:[Java] 日期:2020-12-14 热度:74
Java图形化界面设计――容器(JFrame) 程序是为了方便用户使用的,因此实现图形化界面的程序编写是所有编程语言发展的必然趋势,在命令提示符下运行的程序可以让我们了解java程序的基本知识体系结构,现在就进入java图形化界面编程。 一、Java基本类(JFC)[详细]
-
application作用域实现用户登录挤掉之前登录用户代码
所属栏目:[Java] 日期:2020-12-14 热度:173
一、实现思想 1.application(ServletContext)是保存在服务器端的作用域,我们在application中保存两种形式的键值对:1:userId,sessionId,2:sessionId,session 2.每当一个用户登录时(将生成一个新的session),首先根据userId在application中查询sessio[详细]
-
Java Spring开发环境搭建及简单入门示例教程
所属栏目:[Java] 日期:2020-12-14 热度:158
本篇章节讲解Java Spring开发环境搭建及简单入门示例。供大家参考研究具体如下: 前言 虽然之前用过Spring,但是今天试着去搭建依然遇到了困难,而且上网找教程,很多写的是在web里使用Spring MVC的示例,官方文档里的getting start一开始就讲原理[详细]
-
Rxjava功能操作符的使用方法详解
所属栏目:[Java] 日期:2020-12-14 热度:88
Rxjava功能个人感觉很好用,里面的一些操作符很方便,Rxjava有:被观察者,观察者,订阅者, 被观察者通过订阅者订阅观察者,从而实现观察者监听被观察者返回的数据 下面把Rxjava常用的模型代码列出来,还有一些操作符的运用: 依赖: compile 'io.reactivex[详细]
-
SpringMVC拦截器实现监听session是否过期详解
所属栏目:[Java] 日期:2020-12-14 热度:126
本文主要向大家介绍了SpringMVC拦截器实现:当用户访问网站资源时,监听session是否过期的代码,具体如下: 一、拦截器配置 mvc:interceptors mvc:interceptor mvc:mapping path="/**"/ mvc:exclude-mapping path="/user/login"/ !-- 不拦截登录请求 -- mvc:[详细]