java
SavantStart
这个作者很懒,什么都没留下…
展开
-
生产者与消费者
//生产者与消费者 public class SyschTest { public static void main(String[] args) { Stack stack = new Stack("stack"); Producer p = new Producer(stack, "p"); Consumer c = new Consum原创 2015-04-10 23:10:15 · 346 阅读 · 0 评论 -
Servlet线程安全问题
Servlet是线程不安全的原创 2016-08-25 14:44:46 · 273 阅读 · 0 评论 -
spring ioc aop
IOC:控制反转也叫依赖注入。将原本由我们自己管理的对象交由web容器去管理。利用了工厂模式将对象交给容器管理,你只需要在spring配置文件总配置相应的bean,以及设置相关的属性,让spring容器来生成类的实例对象以及管理对象。在spring容器启动的时候,spring会把你在配置文件中配置的bean都初始化好,然后在你需要调用的时候,就把它已经初始化好的那些bean分配给你需要调用这些be原创 2016-09-03 13:23:08 · 233 阅读 · 0 评论 -
JAVA反射详解
一,先看一下反射的概念: 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。 反射是java中一种强大的工具,能够使我们很方便的创建灵活的代码,这些代码可以再运行时装配,无需在组件之间进行源代码链接。但是反射使用不当会成本很高!转载 2016-03-21 18:35:02 · 270 阅读 · 0 评论 -
Java集合框架:Set(HashSet,LinkedHashSet,TreeSet)
Set概述 Set几乎都是内部用一个Map来实现, 因为Map里的KeySet就是一个Set,而value是假值,全部使用同一个Object。Set的特征也继承了那些内部Map实现的特征。 HashSet 1. 定义 package java.util; public class HashSetE> extends AbstractSetE> implem原创 2016-03-18 11:06:29 · 370 阅读 · 0 评论 -
javaIO总结
在前面:本文章基本覆盖了java IO的全部内容,java新IO没有涉及,因为我想和这个分开,以突出那个的重要性,新IO哪一篇文章还没有开始写,估计很快就能和大家见面。照旧,文章依旧以例子为主,因为讲解内容的java书很多了,我觉的学以致用才是真。代码是写出来的,不是看出来的。最后欢迎大家提出意见和建议。【案例1】创建一个新文件1 2 3 4 5 6 7 8 9 10 11 i转载 2015-05-26 16:39:44 · 391 阅读 · 0 评论 -
java内存空间详解
Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java垃圾回收方面的知识,今天我们再次深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域: ◆寄存器:我们在程序中无法控制 ◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中 ◆堆:存转载 2015-05-12 23:19:13 · 368 阅读 · 0 评论 -
JAVA 内存管理总结
JAVA 内存管理总结 1. java是如何管理内存的 Java的内存管理就是对象的分配和释放问题。(两部分) 分配 :内存的分配是由程序完成的,程序员需要通过关键字new 为每个对象申请内存空间 (基本类型除外),所有的对象都在堆 (Heap)中分配空间。 释放 :对象的释放是由垃圾回收机制决定和执行的,这样做确实简化了程序员的工作。但同时,它也加重了JVM的工作。因为,转载 2015-05-12 23:18:37 · 366 阅读 · 0 评论 -
java中的HashTable,HashMap和HashSet
上篇博客中我们详细的分析了java集合《java中Map,List与Set的区别》。 同时我们也对HashSet和HashMap的核心方法hashcode进行了详解,见《探索equals()和hashCode()方法》。 万事俱备,那么下面我们就对基于hash算法的三个集合HashTable,HashSet和HashMap详解。 本文目录: 1. H转载 2015-05-10 11:47:14 · 675 阅读 · 0 评论 -
吸血鬼数字(java)
*吸血鬼数字是指位数为偶数的数字,可以由一堆数字相乘而得到,而这对数字各包含乘积的一半位数的数字,其中从最初的数字中选取的数字可以任意排列。以两个0结尾的数字是不允许的 例如,下列数字都是吸血鬼数字 1260=21*60 1827=21*87 2187=27*81 写一个程序,找出所有4位的吸血鬼数字* void test(){ int count = 0,num=原创 2015-04-17 16:19:39 · 431 阅读 · 1 评论 -
java文件读写操作大全
转载自:http://blog.sina.com.cn/s/blog_4a9f789a0100ik3p.html一.获得控制台用户输入的信息 public String getInputMessage() throws IOException...{ System.out.println("请输入您的命令∶"); byte buffer[]=new byte[1024];转载 2015-04-09 15:52:09 · 337 阅读 · 0 评论 -
【深入】java 单例模式
关于单例模式的文章,其实网上早就已经泛滥了。但一个小小的单例,里面却是有着许多的变化。网上的文章大多也是提到了其中的一个或几个点,很少有比较全面且脉络清晰的文章,于是,我便萌生了写这篇文章的念头。企图把这个单例说透,说深入。但愿我不会做的太差。 首先来看一个典型的实现:复制代码 1 /** 2 * 基础的单例模式,Lazy模式,非线程安全 3 * 优点:lazy,初次使用时实例化单转载 2015-04-06 20:56:52 · 382 阅读 · 0 评论 -
finally问题
finally:异常处理try语句的组成部分,finally中代码总会被执行,如下代码,返回的是1,原因是执行try中的return时,返回,但是这里并没有退出函数,而只是将函数值返回到了函数中间值中(相当于一个桶中),然后在执行finally中语句,虽然执行了x++,但是最终函数返回1。 注:如果打开finally中return,那么返回的结果将是2,因为此时的return又将结果返回原创 2015-04-06 10:40:37 · 586 阅读 · 0 评论 -
Java技术----多态的实现原理
1.Java多态概述 多态是面向对象编程语言的重要特性,它允许基类的指针或引用指向派生类的对象,而在具体访问时实现方法的动态绑定。Java 对于方法调用动态绑定的实现主要依赖于方法表,但通过类引用调用(invokevitual)和接口引用调用(invokeinterface)的实现则有所不同。 类引用调用的大致过程为:Java编译器将Java源代码编译成class文件,在编译过程中,会转载 2016-08-14 23:00:53 · 559 阅读 · 0 评论