自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (1)
  • 收藏
  • 关注

原创 Iterator new一个对象的过程

Iterator 将集合collection中的元素放在里面进行遍历Iterator it = list.iterator();it.hasNext():判断是否有下一个元素  指针并不移动。it.next():指针下移A a = new A();   将类从磁盘上 运到内存中。jvm创建对象的过程:1)classLoader加载.class文件 2)加载sta

2017-08-12 14:02:58 896

转载 ArrayList、Vector、HashMap、HashSet的默认初始容量、加载因子、扩容增量

转载声明:原文转自http://www.cnblogs.com/xiezie/p/5511840.html 这里要讨论这些常用的默认初始容量和扩容的原因是:当底层实现涉及到扩容时,容器或重新分配一段更大的连续内存(如果是离散分配则不需要重新分配,离散分配都是插入新元素时动态分配内存),要将容器原来的数据全部复制到新的内存上,这无疑使效率大大降低。加载因子的系数小于等

2017-08-12 11:24:58 390

原创 容器Collection的总结一 Vector ArrayList LinkedList HashSet TreeSet

Collection提供了多种存储数据的模型 List接口和Set接口1、Vector(动态数组)和ArrayList相同点:底层都是用数组实现的,所以优缺点是:可以直接根据索引定位到要查询的位置,但是插入删除需要用Arrays.copyOf(原数组,需要复制的长度)或者同Systems.arraycoyp(原数组,开始复制的位置,目标数组,开始插入的位置,长度)两者都允许有重复元素。

2017-08-12 08:31:15 362

原创 继承重写等知识点

只要是子类中可以访问的父类的成员,都可以被子类继承1、方法

2017-08-02 20:54:30 321

原创 Java中IO流总结

1、IO流由四个抽象类扩展而来1)InputStream 抽象的字节输入流(读取)2)OutputStream抽象的字节输出流(输出)3)Reader 抽象的字符输入流4)Writer 抽象的字符输出流不用缓冲区一般使用int read() 和 void write(int x);使用缓冲区:字节型使用byte[] bs = new byte[2048];一般使

2017-08-02 18:57:51 244

原创 DataInputStream 和 DataOutputStream 数据的字节输入流和字节输出流

1、数据流特性1)属于处理流。因此 使用必须套接在字节流上。2)专门用来处理八种数据类型和字符串。为此提供了

2017-08-02 12:28:27 993

原创 两对缓冲流 BufferedInputStream BufferedOutputStream 和 BufferedReader BufferedWriter

1、BufferedInputStream和BufferedOutputStream  缓冲的字节输入输出流2、BufferedReader 和 BufferedWriter 缓冲的字符输入输出流3、缓冲流的特性:1)用来提高输入输出流的效率2)属于处理流 必须套接在字节流上使用4、BufferedInputStream  一般套接在FileInputStream 上Buf

2017-08-02 10:38:18 653

原创 static代码块 构造块 局部代码块

1: 局部代码块(在方法内使用)作用:限制局部变量的作用域,将局部变量的作用域范围控制的更小。在方法被执行的时候,局部代码块被执行。2:构造块 (在类的内部,方法的外部) { }作用:对类的成员进行一些初始化的工作,和构造方法作用类似。在生成类的对象的时候,每生成一个对象,构造块被执行一次。编译之后,构造块内的代码将被放置到 构造方法中去执行。(在构造方法内

2017-08-02 09:40:28 267

原创 生成一个对象的细节过程

Person person = new Person();1、类加载:已经加载过 就不需要二次加载。对静态成员分配空间(对静态成员变量进行默认初始化,然后进行静态成员变量声明处的赋值)。2、对所有的实例变量(非静态的)分配空间,并执行默认初始化 (在堆中)3、执行实例变量声明处的赋值4、执行构造方法中的代码5、构造方法返回 使用 new 关键字将对象的引用带回

2017-08-01 22:38:13 360

原创 static关键字详解

static用来修饰成员变量 和 成员方法static修饰成员变量的作用:1、被称为静态的成员变量2、所有该类的对象共享该变量,无论创建多少个对象 该变量在内存中只有一份。3、静态成员的生命周期不依赖于对象,而是依赖于类4、在类加载的时候分配内存空间5、静态的成员变量不建议使用对象去访问 而是使用类名来访问6、静态的成员变量在方法区中分配内存。一般情况下 终

2017-08-01 20:45:58 205

原创 对象和类的关系

对象 以类为模板,是类的一个实例,是类的具体的表现形式类: 是对对象的抽象,对具有特定功能的对象的抽象描述从源码角度上看:先有类 再有对象从分析层面上看:先有对象后有类从现实世界上看:先有对象再有类面向对象的本质:以类的方式组织代码,以对象的方式封装代码整个程序的基本单位是类

2017-08-01 20:34:41 405

原创 JVM中三种内存区域

1、栈 snack先进后出,栈为每一个方法分配一个帧,当前调用的方法或局部变量总是位于栈顶,当调用一个方法时会开辟一个新的帧并压栈。当方法正常返回或者有异常退出时,会出栈。不可被多个线程共享存放局部变量 方法返回后局部变量便被回收(放对象的引用)2、堆 heap所有new出的对象(成员变量 成员方法)、包括数组、动态分配空间,效率相当低3、方法区(运行数据区 静态代码区)存

2017-08-01 19:57:19 375

原创 this关键字

this:指当前对象,谁调用这个方法 方法中的this 就指像谁。this关键字的作用:1)实现不同对象访问同一方法时,可以访问自己对象的属性。2)当成员变量和局部变量名称相同时,通过this来访问成员变量3)在构造方法中使用this(有参数/无参数) 可以访问本类中其他的构造方法 (r)

2017-08-01 19:21:07 239

原创 FileOutputStream介绍和具体用法

1) 功能: 将给定的整数以字节方式输出到指定的文件中.2) 方法: void write( int x );  将给定的 x 整数以字节方式输出. 因此,当给定的整数超出了 [0, 255]范围时,则会失真.void flush(); 刷新, 将缓冲区中的数据一次性输出到目标处. 确保输出成功.void close(); 关闭输出流,释放所占资源,确保安全.3)

2017-07-26 09:15:55 5303

原创 FileInputStream介绍和对文件操作的具体用法

1、功能:以字节的方式读取文件的内容2、常用方法:int read():以字节的方式读取文件的内容 并反馈字符所代表的整数[0,255],超过范围会失真。规定:当反馈一个-1时表示结束int close():关闭字节输入流 释放所占资源 确保安全3、读取文件的步骤:String path = "e://a.txt"; FileInputStream fis=null

2017-07-26 08:39:50 812

原创 文件流知识点

1、"流"的特性:方向性;连续性;源头性;局限性;单位性2、Java中IO流的分类:1)方向:输入流  输出流2)单位:字节流  字符流3)源头(功能):节点流  处理流3、所有的流由4个抽象类扩展而来:1)InputStream:抽象的字节输入流2)OutputStream:抽象的字节输入流3)Reader:抽象的字符输入流4)Writer:抽象的字符输出

2017-07-25 22:00:27 411

原创 逻辑运算符

1、逻辑与&:两边可以是数值或者boolean型,两边只要有false 就为false  全true才为true;但是两边的表达式都会计算2、逻辑或 | :两边只要有一个true就为true  全是false才为false ;但是两边的表达式都会计算。3、逻辑异或^:两边相同的为false  不同为true4、逻辑非!:!false 为 true ; !true为false短路运算

2017-07-19 18:52:18 316

原创 转义字符

char类型可以用三种赋值方式char c='A';char c1=45;char c2='\u0056';\r:回到行首\n:去到下一行键盘上的回车键对应两个字符:\r 和 \n   所以回车键是去到下一行的行首\t:如果\t前面什么都没有 那么\t在程序中占8个半角位如果前面输入的不是8个半角位的倍数 那么\t所占的位数 为补齐8的倍数的位数

2017-07-19 18:20:24 392

原创 修改cmd的默认路径

windows+R -> 输入regedit  -> HKEY_LOCAL_MACHINE -> SOFTWARE -> MICROSOFT-> Command Processor 右键 新建 字符串值 -> 将“新值 #1”改名为autorun 右键autorun 点击修改 在“数值数据”处填写你想要修改的cmd默认路径

2017-07-18 21:12:04 592

原创 二进制、八进制、十进制、十六进制的转换

任何进制转换为十进制:采用展开 乘以 该进制位底数的次幂的形式举例:   123 ----> 3*10^0+2*10^1+3*10^20xfa1---->1*16^0+10*16^1+15*16^2十进制到二进制:除二取余,逆序排序八进制、十六进制和二进制 之间的相互转换:八进制和二进制: 1个八进制数   3bit二进制十六进制和二进制:1个十六进制

2017-07-18 21:01:27 582

原创 机器码 原码 反码 补码

一个具体的数值在计算机内存中是以补码的形式存储的,用补码存储的优点:1、没有+0 和 -0 之分  都是0000 00002、使用补码,最高位的符号位可以当作普通的数值位来运算,会简化cpu的设计补码的补码是原码!正数:原码、反码和补码三码相同!1T=2^10G=2^20M=2^30KB=2^40byte机器码:用于在机器码被分为了三种:原码 反码

2017-07-18 20:59:41 2928

原创 path classpath java_name

java_name:放置安装jdk的目录path:%java_name%\inclasspath:最近的版本不许要配置classpathclasspath是放.class文件的。doc要查找文件 会在doc当所在目录和class path配置的目录中都查找此文件。

2017-07-18 20:28:58 241

原创 斜杠/和反斜杠\的区别

1、浏览器地址栏网址使用;html中url;网络路径 用 斜杆/ 2、windows文件浏览器上使用 反斜杠\ ;3、出现在普通字符串中的路径,如果代表的是windows文件路径,则使用 斜杆/ 和 反斜杠\ 是一样的;如果代表的是网络文件路径,则必须使用 斜杆/ ;4、doc命令中的路径用\,doc中的命令参数用/比如 rd /s /q 目录名

2017-07-18 20:08:03 681

原创 常用的一些DOS命令

DOS:disk operating system(磁盘操作系统)打开dos界面程序快捷方式:windows+R  输入cmd回车通过 /? 了解当前指令的具体用法  比如 copy /?回车1、切换目录的指令:cd(change dirctory)cd \ :回到当前目录的根目录    (/:斜杠   \反斜杠)在doc命令中 一些操作用/,doc中的路径用\在下文中总结

2017-07-18 19:46:11 238

原创 JVM的作用简介

JVM功能:解释器:将于平台无关的字节码指令(jvm指令)解释给当前平台去执行类加载:将字节码文件加载到内存中执行内存管理 垃圾回收

2017-07-18 19:12:16 543

原创 java与C语言跨平台原理

以最经典的HelloWorld.java程序为例,程序写完后保存为.java源文件,经过javac.exe编译为HelloWorld.class字节码文件。此时的字节码文件所有平台(windows、linux、xp等各种系统+CUP)的机器语言都不识别,需要JVM(java virtual machine,java虚拟机 )对HelloWorld.class字节码文件进行解释(java.exe是解

2017-07-18 18:20:27 1530

原创 javaME javaSE javaEE的区别

1、Java ME:java micro edtion java微型版,针对手持设备(java版本的功能较少,运行的时候需要的内存较少)2、Java SE:java standard edtion java标准版,针对PC的桌面程序3、Java EE:java enterprise edtion java企业版,针对企业服务器的

2017-07-18 18:18:43 487

原创 计算机语言的发展史

第一代:机器语言,只能识别计算机自己特定的指令 即二进制串的集合,所有的操作都用二进制的形式操作。第二代:汇编语言,一部分操作用英文字母代替,比机器语言方便人与计算机之间的交流。第三代:高级语言,c(面向过程);c++、java、vb等(面向对象)

2017-07-18 18:12:09 291

原创 确实是闲的 整理一下java知识

自己对java的一些理解

2017-07-18 18:06:46 213

原创 文件读入和输出

读取文件:File f = new File("e:/记事本.txt");FileInputStream fis = new FileInputStream(f);如果是fis.read():读取一个字节(英文)中文是两个字节:一次读取两个字节不会出现乱码int i = 0;byte[] b=new byte[2];white((i=fis.read(b))!=-1

2017-04-13 20:00:27 347

原创 方法重载(overload)

1,方法名相同,参数的个数、类型、次序不同,返回值没有要求2,重载的返回值可以相同也可以不同,只要参数不同就有方法重载。3,当参数相同时,一个类中不允许有两个方法名相同的方法,会出现编译错误,仅返回值不同,无法构成重载4,可变参数方法,及传几个值都可以方法:public class Person {int result;public int sum(int ... nu

2017-04-12 17:40:21 298

原创 基本类型传值和引用类型传值

1,基本类型传值,传过去的是一个复制品,对方再怎么改,对其原来的参数都没有影响2,引用类型传值,传递的是内存地址,对方拿着这个值可以随意修改,原来的参数值改变

2017-04-12 17:35:26 418

原创 JAVA知识点

1,类是对象的模板。对象是类的实现。对象的抽象是类2,当写有参构造器之后,必须写无参构造器(无参方法)3.Static不需要实例化对象可以访问,在另一个类中调用static方法或者static变量(全局变量)时,可以直接ClassName.staticname。程序运行内存就一直存在,所有的对象共享这一块内存,当static变量的值改变时,所有对象都享受到这块内存。对自己使用,不用进入实例

2017-04-12 15:45:22 309

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除