java
雨点儿
这个作者很懒,什么都没留下…
展开
-
2015-07-27
int farray[]=new int[3];//int specify the type of the element,[] indicate that 'farray' is an array //********************************************************************************* S原创 2015-07-28 11:53:55 · 373 阅读 · 0 评论 -
Java 可变参数
founction(int… args){ int a=0; for(int i=0;i原创 2016-05-26 03:04:48 · 262 阅读 · 0 评论 -
JSP技术概述
使用JSP技术构建网页的大体处理流程:转载 2016-05-04 22:01:18 · 3767 阅读 · 0 评论 -
Java集合接口
集合:一类相同类型的数据放到一起就是一个简单的集合。Java集合主要用来盛装其他的数据类型的引用,所以也称之为 容器。在Java集合类库将接口和实现进行了分离:例如,队列接口interface Queue<E>{ void add(E element); E remove(); int size();}而具体的实现有:LinkedList和ArrayDueue两个类原创 2016-06-03 08:22:03 · 539 阅读 · 0 评论 -
深入理解JVM
声明:本系列博客内容均来自于《深入理解Java虚拟机》Java面向网络体系结构三大支柱:平台无关性、安全性、网络移动性Java虚拟机的基本结构:Class loader+执行引擎Java体系结构:独立又相关的四个技术:声明:本系列博客内容均来自于《深入理解Java虚拟机》Java面向网络体系结构三大支柱:平台无关性、安全性、网络移动性Java虚拟机的基本结构:Class loader+执原创 2016-07-26 22:47:34 · 285 阅读 · 0 评论 -
深入JVM 第一章 之2
声明:本系列博客内容均来自于《深入理解Java虚拟机》,感谢作者和译者执行引擎可以有多种工作方式: 一次性解释字节码更快但是更耗内存的“即时编译器”:将第一次执行的字节码全部编译为本地机器代码,当以后要用这些方法时便调用这些本地机器代码。自适应优化器:跟第二种方式相比较,只是将使用最频繁的字节码编译成了本地机器代码原创 2016-07-26 23:44:06 · 242 阅读 · 0 评论 -
深入理解JVM 第一章之1
声明:本系列博客内容均来自于《深入理解Java虚拟机》 1. Java面向网络体系结构三大支柱:平台无关性、安全性、网络移动性 2. Java虚拟机的基本结构:Class loader+执行引擎 3. Java虚拟机是一台抽象的计算机,其规范定义了每个Java虚拟机都要实现的特性,但是每个特性的实现都可以有很多选择。例如,虽然每台虚拟机都要求必须执行字节码,但是执行的方式可以不同,可以使原创 2016-07-26 23:22:19 · 267 阅读 · 0 评论 -
深入理解JVM 第一章 之3
类装载器:“启动”类装载器(默认类装载器、原始类装载器、系统类装载器)和用户自定义的类装载器。“启动”类装载器:JVM的一部分。例如JVM在已有的OS上实现为C程序,那么它就是C程序的一部分,从本地装载类(包括Java API中的类)“用户自定义”类装载器:Java应用程序能够在运行的时候安装用户定义的类装载器。利用这种类装载器,用户可以在程序中指定装载类的方式(例如从网上下载字节码、从数据库中原创 2016-07-27 00:08:46 · 262 阅读 · 0 评论 -
深入理解JVM 第一章 之4
web浏览器启动的Java应用程序通常为每个提供 .class 文件的网络地址分别创建不同的用户自定义类装载器web浏览器利用Java应用程序来安装用户自定义类装载器。用户自定义类加载器知道如何来请求 .class 文件,并且也经常被称为Java Applet 类加载器通过允许实例化的用户自定义类加载器知道如何从网上下载 .class file,Java类加载器提供了网络移动性的支持。传统的原创 2016-07-27 00:34:40 · 228 阅读 · 0 评论 -
深入理解JVM 第一章 之5
除了平台无关性的推动之下,JavaAPI的方法在Java安全模型方面也做出了贡献。在JavaAPI进行有潜在的危险的操作(比如访问本地磁盘的读写操作)之前,都会通过查询安全管理器来查看是否有权限,有肯能被允许,也有可能被拒绝。1.2之后 安全管理器就改成了访问控制器Java语言提高了开发效率,主要缺点是执行速度慢。Java是动态连接的,从一个类到另一个类之间的引用是符号化的。在静态连接可执行程原创 2016-07-27 00:51:01 · 269 阅读 · 0 评论 -
reaLine()和read()
``` Advances this scanner past the current line and returns the input that was skipped. **This method returns the rest of the current line, excluding any line separator at the en原创 2016-08-31 19:31:03 · 443 阅读 · 0 评论 -
Java 拆箱与装箱
在Java中每个基本数据类型都有对应的一个类, 基本类型 对应的类 byte Byte short Short int Integer long Long float Float double Double char Character void Void boolean Boolean - 这些对象包装器是不可变的,也原创 2016-08-31 23:38:50 · 330 阅读 · 0 评论 -
JVM中的内存分配(对象的存储)
Jvm中的内存分为:寄存器、栈、堆、常量池、代码段、数据段寄存器:不可控,也是未知栈:保存局部变量。而局部变量又包括基本类型和引用类型。对于基本类型来说其中就是保存其“值”,而对于引用类型的来说,这里存放它的地址,当一个局部变量使用完之后会被立马释放掉,但是堆区不会立马被释放。另外,局部变量是共享的,也就是说,如果栈中有int i=0,如果再出现int j=0的话,就会让j指向同一个地址。堆原创 2016-09-01 02:13:24 · 3189 阅读 · 1 评论 -
Java 类、对象内容回顾
对象的初始化:主要是执行执行类中的静态块初始化和静态变量初始化 当类被用到的时候就会进行初始化,但是不一定会被实例化,实例化的时候才会执行实例域的初始化和初始化代码块的代码class ThirdInit{ private int age=0;//这种是第一种方式 private String name="initial name"; private static Strin原创 2016-09-27 19:51:57 · 360 阅读 · 0 评论 -
Java方法的调用过程
在调用一个方法的时候要看这个方法是静态绑定(final static private)还是动态绑定。 在动态绑定时, 会生成这个类和它父类的方法表。例如类B是类A的子类,类A中有它的方法a, b, c三个自己定义的方法, A: a()-> A.a() b()->A.b() c()->A.c() 也有来自于Object的方法,那么类B中有a, b, c三个继承来的,并且已经重写的c(方法原创 2016-11-22 14:44:35 · 2401 阅读 · 1 评论 -
加载指定文件的方式,使用getResourceAsStream("fileName")
InputStream in=DBUtil.class.getResourceAsStream("database.properties")此时,database.properties和DBUtil在同一个目录下面。解释:getResourceAsStream:Finds a resource with a given name. The rules for searching resources原创 2017-04-07 14:58:11 · 1650 阅读 · 0 评论 -
Q
1、框架,例如:java.util.concurrent框架原创 2016-04-09 16:33:30 · 293 阅读 · 0 评论 -
Java线程
中断线程: 方法1:interrupt()//这个方法是请求终止线程的,并不是强制性的,(stop方法之前是强制性的现在已经废弃了),当调用这个方法的时候点成的中断状态被置位,这是个boolean标志。而每个线程都会不停地检查这个线程来判断这个位来判断线程是否被中断了。 方法2:可以调用Thread.currentThread().isInterrupted()来判断当前线程是否已经被中断。但是原创 2016-03-24 01:16:42 · 302 阅读 · 0 评论 -
Hashtable&HashMap
package project1;import java.util.*;public class JavaSet { public static void main(String args[]){ //ArrayList al=new ArrayList();//ArrayList中的数据类型都是Object类型的,而所有的类都是Object的子类,所以都可以存到Arra原创 2015-09-15 07:57:13 · 405 阅读 · 0 评论 -
JAVA的比较之==
在很多的变成语言中都会看到‘==’这个比较符。一开始认为这个比较符是可以比较任何的东西,比较的都是它们的内容,任何两个东西之间都可以使用这个运算符。但是在学习Java的时候,我蒙了。 Scanner s=new Scanner(System.in); while(s.hasNext()){ String line=s.nextLine();原创 2015-07-24 14:39:56 · 446 阅读 · 0 评论 -
Java中变量的作用域
在Java中变量的形式有实例变量、局部变量、方法参数、异常处理参数原创 2015-08-06 21:03:15 · 4902 阅读 · 0 评论 -
java集合类
1、初步理解 java集合类的产生是为了应对数组不能动态改变大小。 简单的代码演示:package project1;import java.util.*;public class JavaSet { public static void main(String args[]){ ArrayList al=new ArrayList();//Arr原创 2015-09-12 19:15:31 · 405 阅读 · 0 评论 -
Differences between ArrayList and Vector
相同点: 两者都是java的集合类,都可以放java对象,里面放的都是Object类型的。 不同点:同步性: Vector是同步的,也就是安全的。这个类中的一些方法保证了Vector中的对象是线程安全的。而ArrayList则是异步的,因此ArrayList中的对象并不是线程安全的。因为同步的要求会影响执行的效率,这样可以避免由于同步带来的不必要的性能开销数据增长:原创 2015-09-15 08:30:20 · 374 阅读 · 0 评论 -
HashMap
package project1;import java.util.*;public class JavaSet { public static void main(String args[]){ //ArrayList al=new ArrayList();//ArrayList中的数据类型都是Object类型的,而所有的类都是Object的子类,所以都可以存到Arr原创 2015-09-15 07:20:32 · 293 阅读 · 0 评论 -
集合的选择
如果要求线程安全的:Vector和Hashtable如果不要求线程安全:ArrayList、LinkedList、HashMap如果要求键值对:HashMap、Hashtable如果数据量很大又要考虑到线程安全:Vector原创 2015-09-15 08:38:07 · 424 阅读 · 0 评论 -
泛型
泛型的产生 代码段:public class FanXing { public static void main(String[] args) { // TODO Auto-generated method stub Bird<String> bird=new Bird<String>("marry"); System.out.printl原创 2015-09-15 09:25:51 · 283 阅读 · 0 评论 -
java线程
创建线程原创 2016-03-24 00:56:17 · 271 阅读 · 0 评论 -
Java之从任务中产生返回值方式1
Java多线程返回结果原创 2016-04-02 23:39:28 · 609 阅读 · 0 评论 -
Java多线程返回结果2 FutureTask
import java.util.ArrayList;import java.util.concurrent.Executors;import java.util.concurrent.ExecutorService;import java.util.concurrent.*;public class BasicThread { public static void main(Stri原创 2016-04-02 23:47:21 · 404 阅读 · 0 评论 -
Java后台线程
Java后台线程原创 2016-04-03 00:08:41 · 434 阅读 · 0 评论 -
由后台线程创建的线程也是后台线程
public class BasicThread{ public static void main(String[]args){ Thread thread=new Thread(new Dae()); thread.setDaemon(true); thread.start(); try { Syste原创 2016-04-03 00:38:24 · 426 阅读 · 0 评论 -
Java类的初始化1
类中的属性是按照顺序依次初始化的,并且是先初始化变量,再调用构造函数原创 2016-04-03 11:01:10 · 318 阅读 · 0 评论 -
Java类初始化2
程序运行过程原创 2016-04-03 17:36:43 · 289 阅读 · 0 评论 -
Java初始化3
原帖:Java类加载器总结 类什么时候才被初始化: 类加载过程分为三个步骤:装载(Load),链接(Link)和初始化(Initialize) 1)创建类的实例,也就是new一个对象 2)访问某个类或接口的静态变量,或者对该静态变量赋值 3)调用类的静态方法 4)反射(Class.forName("com.lyj.load")) 5)初始化一个类的子类(会转载 2016-04-03 18:08:48 · 331 阅读 · 0 评论 -
Java多线程之对象锁,问:到底是哪个对象?
题:任何Java对象都是天生的一把锁。需要:注意的是除了Object对象,还有Class对象,大家都知道有类锁和对象锁。并且知道使用synchronized修饰实例方法的时候是要获取实例锁,而使用synchronized修饰类方法的时候需要获取类锁。那么何为实例锁?何为类锁? 回答这个问题前要知道:synchronized使用的锁是放在对象头里的Markword里面实例锁对应实例对象Obje原创 2017-08-10 23:02:56 · 434 阅读 · 0 评论