`
文章列表
       今天早上创建一个xml文件的时候,下意识的下一步到了最后,然后发现自己以前的xml文件全部变成了file类型打开的文件,这是因为我们创建了一个错误的后缀并且保存到了编译器中,我们删除这个自己错误添加后缀即可;        步骤为:File--->settings--->File types,页面如下 在右上部分找到text,点击并删除自己添加的那个后缀即可  
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解题思路:创建两个栈,如栈操作和入队操作是一样的,我们要做的就是把出栈的先进后出借助第二个栈变成先进先出,先把第一个栈中的数据全部压到第二个栈中,获取栈顶元素后,再把第二个栈中的其他数据全部压到第一个栈中,重复此操作即可; 代码如下(主函数这里不再写测试数据,代码已经通过): import java.util.Stack; /** * Created by Taoyongpan on 2017/10/18. */ public class StackDemo { Stac ...
二叉树在Java中有两种方法可以实现,用数组实现和用链表实现,本篇主要讲这两个方法: 一、数组实现二叉树,缺点是浪费空间,代码如下: package offer.tree; /** * Created by Taoyongpan on 2017/10/15. * 二叉树的创建和一般操作 * 数组实现二叉树,浪费很多的内存空间 * 左孩子下标 = 父节点下标*2 * 右孩子下标 = 父节点下标*2+1 */ public class TreeDemo { // int root = 1; int btree[]; private ...
WebRTC是现在新兴的一种视频技术,利用浏览器,所以对浏览器的版本有要求,想学视频的小伙伴可以 观关注一下这个技术,现在这个技术在国外已经相对成熟;在国内的发展也已经逐渐跟上; 编译器Idea, 直接上代码, 首先主播的前端页面代码: <%-- Created by IntelliJ IDEA. User: Taoyongpan Date: 2017/10/12 Time: 22:05 To change this template use File | Settings | File Templates. --%> <%@ pa ...
Java栈的三种实现方法,使用Java自带的方法 Stack、用数组模拟Stack、用链表模拟Stack; 第一种方法,使用Java自带的Stack方法,代码如下: package study.stack; import java.util.Stack; /** * Created by Taoyongpan on 2017/10/13. * 利用Java自带的栈方法 */ public class StackDemo { public static void main(String[] args){ Stack<Stri ...
剑指offer的替换空格 ; 题目描述:把一个字符串中的空格全部替换为20%; 解题思路:①在原来的字符串上面移动,时间复杂度为O(n^2)                   ②创建新的字符串,便利一遍数组,把所有的空格数计算出来,创建新的数组,时间复杂度为O(n)   解法一: 运用Java自带的replace方法: public String replace(CharSequence target, CharSequence replacement)使用指定的字面值替换序列替换此字符串所有匹配字面值目标序列的子字符串。该替换从字 ...
       建立TCP连接需要三次握手,断开需要四次挥手。        (一)建立TCP/IP连接的三次握手 1、客户主机向服务器发送连接请求报文:SYN=1,seq=x; 2、服务器端接收连接请求后回复ACK报文,并为这次连接分配资源:SYN=1,seq=y,ack = x+1; 3、客户端接收到 ACK报文后也向服务器发送ACK报文,并分配资源:SYN=0,seq=x+1,ack = y+1; 这样一个TCP/IP连接就建立了;         (二)断开连接的四次挥手(中断连接 端可能是client端,也可能是 server端):          假设client端发 ...
       参考:http://www.jianshu.com/p/fdc64df67794      Java中的单例模式是 一种常见的设计模式,单例模式一共有好多种,这里主要讲解七种,单例模式有以下的特点:        1、单例类只能有一个实例        2、单例类必须自 ...

java回收策略

    博客分类:
  • JVM
 一、Java的回收策略是:        回收已经“死了”的对象即不可能再被任何途径使用的对象    二、如何判断对象已经死了:       我们现在常用的方法是引用计数算法和根搜索算法       ①引用计数算法的原理和弊端 ...
          我们利用JVM对内存进行分配和管理的的最主要目的就是为了防止内存泄漏和溢出这两大问题,这也是我们初学的时候最容易忽略的;           概念:            内存泄露:分配出去的内存回收不了            内存溢出:系统的内存不够用了 一、内存泄漏           一般来说内存泄露都有两种情况,第一种情况在C/C++的,在堆中分配的内存 ,在没有将其释放掉的时候,就将所有能访问这块内存的方式都删掉(如指针重新赋值);另一种情况则是在内存对象明明已经不需要的时候,还仍然保留着这块内存和它的访问方式(引用)。第一种情况,在Java中已经由于 ...
有很多备受关注的初创开源项目,下面列出十个项目是我觉得非常有趣的,涉及到的学习范围也很广。其中有些还在早期阶段,这对我们来说更好。看一看这些项目,选择一个你喜欢的,然后给它的领导者发一封邮件并参加到开发中去。   War Worlds – 策略类的游戏 – Java 服务端和 Android 客户端。 OpenWorm – 运行于浏览器中的小线虫的神经力学模型,其模拟后端都是用 Java 写的。 JRAW – Reddit API 的Java 包装器。 XChart – 用于绘制数据的超轻量 Java 库。 libgdx – 用于创建游戏的开源框架。 Particl ...
        Java是一种面向对象的语言,是现今世界上最好的语言之一;         Java源代码的默认编译结果并非是本地机器指令,而是具有平台通用性的字节码,因此Java是一种一次编译,处处运行的语言;Java的源代码编译出来的字节码文件,是在Java虚拟机(jvm)中运行的,虽然不同平台的Java虚拟机的实现机制不尽相同,但是编译出来的字节码却是一样的;因此Java又是一种跨平台的语言, 并且能解决程序的安全性问题、跨平台移植性问题;        Java技术的核心就是JVM,JVM是由一组规范所定义的抽象计算机,JVM的主要任务就是负责将字节码装载到其内部,解释/编译为对 ...
       首先介绍一下自己,我是一名普通的本科大二学生,对考研非常拒绝,我也一直认为,我没有非常远大的志向,我背离了小时候要当科学家的理想,我也没有那种刷一个高学历去干一番大事业的决心,我就想做一个随波逐流的庸俗的学生,能在本科毕业进入一个一流公司,然后挣很多的钱,吃喝玩乐几十年,这一辈子就过去了。所以一进入大学我就朝着自己的小目标缓慢前行着。大一的时候没有怎么接触过项目开发,就听我姐的话学习一些前端,去找工作了,那时候我感觉她都是瞎扯淡的,一个大一的学生能干什么啊,然后她跟我说,培训班无论培训什么都是三个月学习完成,说我就是在逃避现实,说我本来就这么菜了,还不想着在其他方面为自己争取一 ...
      出自 (深入 分析JavaWeb技术内幕 ,并向大家安利这本书,作者:许令波)         session和 cookie简单来说就是HTTP的配置项,在servlet规范中只是对应了一个类而已;但是当我们的系统大到需要很多的cookie的时候,我们不得不考虑HTTP对cookie数量和大小的限制 ;session也会遇到这样的问题,当我们的一个应用系统有几百台服务器时,如何解决 session在 服务器之间的共享问题?还有一些安全问题,如cookie 被盗和cookie伪造等问题如何避免?         session和cookie都是为了保持访问用户与后端服务器的交 ...
       ssm框架是由Spring+SpringMVC+Mybatis整合而成,目前正在努力学习中,虽然网上的搭建教程很多,但是实际上都不怎么能跑起来,可能 大家用的开发软件不一样,和对框架的要求有所不同;下面我就大概讲一下自己是怎么搭建出来的。(出自Spring3.x企业应用开发实战)  1、Spring       是分层的Java SE/EE应用一站式的轻量级开源框架,以IOC(Inverse  of  Control:控制反转)和AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层 SpringMVC和持久层Spring JDB ...
Global site tag (gtag.js) - Google Analytics