java 基础
文章平均质量分 81
yanbin_x
仅仅是将代码再实践一篇是不够的。我们还需要思考,对比以及整理、分享。努力去体验一个更大的世界的欲望。。。http://zmywly8866.github.io/2015/01/02/the-2014-annual-summary.html
展开
-
Java到底是传引用还是传值?
Java到底是传引用还是传值?2013/03/14 | 分类: 基础技术 | 7 条评论分享到:1本文作者: ImportNew - ImportNew读者 未经许可,禁止转载!问题: 如果Java是用引用来传递的话,为什么交换函数(swap)不起作用呢?回答: 你的问题引出了Java新手的常犯的错误。事实上,一些老手也很难搞清楚这些概念转载 2016-01-20 15:43:54 · 846 阅读 · 0 评论 -
java异常笔记
Day11知识总结:1、异常处理细节:1、定义功能时,功能中有什么问题,都应该进行预先的处理比如try catch.如果处理不了,应该通过throws声明抛出,让调用者进行处理。2、调用了抛出异常的功能的函数,应该进行处理,如果使用try catch处理的话,被调用的功能上抛出几个异常,就应该对应几个catch语句,必须要对多个异常进行针对性的处理。3、如果出现多个catch中存在原创 2014-05-06 22:01:45 · 825 阅读 · 0 评论 -
多线程总结
1、多线程:a) 什么是进程?(正在执行的程序,就是一个应用程序在内存中开辟的空间)b) 什么是线程?(其实就是进程中的一个控制单元,负责就是程序的执行.c) JVM:它自身就是多线程的,因为在程序运行过程中会在堆内存中产生很多的垃圾,就需要被垃圾回收机制进行回收。Main函数代码执行时,也在运行着垃圾回收,所以是同时执行的,这就是两个独立的线程原创 2014-05-04 16:15:19 · 677 阅读 · 0 评论 -
线程同步工具之CountDownLatch
转载自http://blog.csdn.net/junshuaizhang/article/details/39580751#commentsCountDownLatch的一个非常典型的应用场景是:有一个任务想要往下执行,但必须要等到其他的任务执行完毕后才可以继续往下执行。假如我们这个想要继续往下执行的任务调用一个CountDownLatch对象的await()方法,其他的任务执行完自转载 2015-12-24 10:49:31 · 768 阅读 · 0 评论 -
ArrayDeque jdk1.6出的
java.util.ArrayDeque 类提供了可调整大小的阵列,并实现了Deque接口。以下是关于阵列双端队列的要点:数组双端队列没有容量限制,使他们增长为必要支持使用。它们不是线程安全的;如果没有外部同步。不支持多线程并发访问。null元素被禁止使用在数组deques。它们要比堆栈Stack和LinkedList快。此类及其迭代器实现C翻译 2016-01-09 11:13:10 · 705 阅读 · 0 评论 -
static成员加载时机
废话不多说 看看这段代码。告诉我结果:[java] view plain copyimport java.io.*; class Test { public static Test t = new Test(); public Test(){原创 2016-03-01 14:15:48 · 567 阅读 · 0 评论 -
Java中只有按值传递,没有按引用传递!
Java中只有按值传递,没有按引用传递!博客分类: Java 今天,我在一本面试书上看到了关于java的一个参数传递的问题:写道java中对象作为参数传递给一个方法,到底是值传递,还是引用传递? 我毫无疑问的回答:“引用传递!”,并且还觉得自己对java的这一特性很是熟悉!结果发现,我错了!答案是:值传递!Java转载 2016-03-01 15:29:40 · 299 阅读 · 0 评论 -
每个初学者都应该搞懂的问题
每个初学者都应该搞懂的问题标签: stringequalsimmutableobjectjavaclass2009-07-16 22:10 11193人阅读 评论(6) 收藏 举报 分类: _java/eclipse(132) 版权声明:本文为博主原创文章,未经博主允许不得转载。对于这个系列里的问题,每个学Java的人都应该搞懂。转载 2016-02-21 21:55:40 · 417 阅读 · 0 评论 -
java中的移位运算符:<<,>>,>>>总结
java中的移位运算符:>,>>>总结java中有三种移位运算符>> : 右移运算符,num >> 1,相当于num除以2>>> : 无符号右移,忽略符号位,空位都以0补齐下面来看看这些移位运算都是怎样使用的 1 /** 2 * 3 */ 4 package com.b510.test; 5 6 /**转载 2016-03-20 19:47:14 · 412 阅读 · 0 评论 -
多线程下载原理
多线程下载原理图和java代码实现 import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.InputStream; import java.io.RandomAccessFile; import java.net.HttpURLConnection; i原创 2016-02-25 11:19:20 · 1279 阅读 · 0 评论 -
java 堆和栈的区别
在JVM中,内存分为两个部分,Stack(栈)和Heap(堆),这里,我们从JVM的内存管理原理的角度来认识Stack和Heap,并通过这些原理认清Java中静态方法和静态属性的问题。 一般,JVM的内存分为两部分:Stack和Heap。 Heap(堆)是JVM的内存数据区。Heap 的管理很复杂,每次分配不定长的内存空间,专门用来保存对象的实例。在Heap 中分配一定转载 2016-02-25 19:35:11 · 343 阅读 · 0 评论 -
JAVA正则表达式 Pattern和Matcher
山岭巨人 博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 :: 管理 :: 83 随笔 :: 0 文章 :: 108 评论 :: 0 引用公告昵称:山岭巨人园龄:5年8个月粉丝:292关注:0转载 2016-04-06 09:46:58 · 431 阅读 · 0 评论 -
线程wait sleep
Day14总结:1、 wait和sleep的区别:(面试题)1、 sleep指定时间,wait可以指定时间,也可以不用指定时间。2、 wait方法必须定义在同步中,sleep方法不一定。3、 在同步中wait sleep对于执行权和锁的处理不同: i. Sleep释放CPU执行权,但是没有释放锁。原创 2014-05-07 22:33:11 · 958 阅读 · 0 评论 -
集合体系框架基础总结
1、集合框架体系由来:数据多了可以用对象类存储,对象多了用集合来存。概述:集合是一个容器、存储对象、长度可变化。什么时候使用容器:一旦数据多了就得先把数据存储起来再操作,这样效率更好和数组的区别:1、数组定义时长度是固定的(必须明确元素类型和长度) 集合定义时,可以不用明确长度,长度是可变的。2、数组存储是同一类型的数据,集合存储的是对象,而对象可以原创 2014-05-08 23:20:44 · 609 阅读 · 0 评论 -
正则表达式总结
1、正则表达式概述:首先是表达式,是一种正确的规则去进行某一种是事物的操作,用于对字符串进行操作的表达式,用于对字符串进行的操作好处:代码更为简洁、提供了一些符号来表示一些规则,其实这个规则内部还是有具体的代码来完成对字符串操作。简单说:好像是将代码进行封装、用符号进行了替代。弊端:正因为是符号表示的,所以要记住很多符号的使用,而且符号多了阅读性极差。Eg:对QQ号码进行校验要原创 2014-04-27 15:24:38 · 439 阅读 · 0 评论 -
java是如何管理内存的
1. java是如何管理内存的 Java的内存管理就是对象的分配和释放问题。(两部分) 分配 :内存的分配是由程序完成的,程序员需要通过关键字new 为每个对象申请内存空间 (基本类型除外),所有的对象都在堆 (Heap)中分配空间。释放 :对象的释放是由垃圾回收机制决定和执行的,这样做确实简化了程序员的工作。但同时,它也加重了JVM的工作。因为,GC为了能够正确释放对象,GC转载 2016-01-24 11:26:41 · 740 阅读 · 0 评论 -
7k面试题交通灯
需求分析:交通灯管理系统的项目需求Ø 异步随机生成按照各个路线行驶的车辆。例如: 由南向而来去往北向的车辆---- 直行车辆 由西向而来去往南向的车辆---- 右转车辆 由东向而来去往南向的车辆---- 左转车辆 。。。Ø 信号灯忽略黄灯,只考虑红灯和绿灯。Ø 应考虑左转车辆控制信号灯,右转车辆不受信号灯控制。Ø 具体原创 2014-07-10 21:39:03 · 592 阅读 · 0 评论 -
类加载器总结
类加载器 一、概述: 1、定义:简单说,类加载器就是加载类的工具。当出现一个类,用到此类的时候,Java虚拟机首先将类字节码加载进内存,通常字节码的原始信息放在硬盘上的classpath指定的目录下。2、类加载器作用:将.class文件中的内容加载进内存进行处理,处理完后的结果就是字节码。3、默认类加载器:1)Java虚拟机中可安装多个类加载器,系统默认的有三个主要原创 2014-07-10 09:40:41 · 467 阅读 · 0 评论 -
Sting&&StringBuffer&StringBuilder三者区别
1、String类:|--特点:首先它是字符串的对象类,一旦被初始化,不能被改变,在笔试中和面试中常考。|--常见方法:|--获取:int length();获取长度charAt();获取字符串中的字符Int indexof();很多形式,重载,获取字符串的某个字串。|--判断:Boolean contains()Boolean startWith();原创 2014-07-04 22:01:42 · 1819 阅读 · 0 评论 -
黑马程序员--反射技术总结
一个应用可以加载后期出现的类,这种情况可以使用反射技术来完成。首先告诉类名,直接寻找类名所对应的class文件,并可以将其加载进内存,然后创建其对象,反射技术可以提高程序的扩展性,连new对象都不用了,通过反射技术可以完成对指定名称的类进行对象的创建和内容的调用,其实反射技术就是动态获取一个类,并获取类中的所有内容,简单说反射就是对类的解剖。获取字节码文件对象的三种方式:1、通过Obj原创 2014-06-05 07:30:16 · 722 阅读 · 0 评论 -
网络编程TCP&UDP基础总结
1、TCP:|--特点:面向连接、虚电路连接、有缓冲的传输、全双工通信|--对象:|--Socket:用来建立发送 端建立Socket服务的对象,|--ServerSocket:用来建立接收端建立Socket服务的对象。因为只有当创建了Socket服务通道时,才能建立端点到端点的连接,进行数据通讯。|--客户端和服务端建立连接:|--客户端:思路:1原创 2014-05-27 21:38:50 · 743 阅读 · 0 评论 -
网络模型&网络编程&io
1、编码表:|--由来:计算机只能识别二进制数据,早期由来的是电信号,为了方便计算机能识别各个国家的文字,就将各个国家的文字用数字来表示,并一一对应,形成了编码表。|--常见码表:|--ASCII:一个字节中7位就已经可以表示英文中的内容了。|--ISO8859-1:包含了ASCII,同时用了一个字节的最高位。|--GB2312/GBK:用两个字节表示各种文字。()|--U原创 2014-05-22 23:02:30 · 1076 阅读 · 0 评论 -
IO流的打印流、序列流其他流总结
1、打印流:就是输出流,可以直接操作输入流和文件printStream:字节流特点:1、构造函数接收File对象、字符路径、字符输出流、以为着打印的目的可以是很多。 2、该对象具有特有的方法,print println可以打印任何数据类型的数据。 3、特有的printf方法可以保持任意类型的数据表现形式的原样性,将数据输出到目的地,对于OutputStream父类中的write原创 2014-05-18 22:24:19 · 943 阅读 · 0 评论 -
io流基础和file类
1、IO流的操作规律总结:(重点)1、明确体系:数据源:InputStreamReader 数据汇:OutputStreamWriter2、明确数据:数据源:是否为纯文本数据是:Reader否:InputStream数据汇:是:Wirter否:OutputStream从上就可以明确具体要使用哪一个体系了,剩下的就是要明确使用这个体系中的哪个对象3、明原创 2014-05-15 22:56:17 · 626 阅读 · 0 评论 -
Arrays,Collections,Math,Random,增强for循环,可变参数,System类
1、集合框架的工具类:|--Collections:是一个类、collection是一个接口。特点:1、方法全部是静态的、不需要创建对象、类名直接调用。 2、能把非同步的变成同步,也就是说把不安全的变成安全的。常用方法:binarySearch():只能对list集合进行查找,为什么?因为查找的时候有角标,保证元素有顺序,返回的是:-(插入点)-1;-1是为了出现0的情况。原创 2014-05-13 22:12:42 · 691 阅读 · 0 评论 -
泛型和Map集合总结
1、泛型类:在写容器之前想要容器中要存什么?所以要先写好泛型Eg:TreeSetts=new TreeSet();有了泛型后强制转换就没有用Eg:public class Person implementsComparator{}对于下面覆盖的它的compare方法就不用强制转换了。Public intcompare(Person p){}这里就不用在做强制转换了。实现原创 2014-05-12 08:52:03 · 894 阅读 · 0 评论 -
集合框架LinkedList与Set总结
1、LinkedList:特有方法:1、增加:addFirst() addLast()JDk1.6之后出现了替代方法Boolean offerFirst()Boolean offerLast()实现代码:Public static void main(String[] args){LinkedLis link=new Li原创 2014-05-10 22:14:17 · 917 阅读 · 0 评论 -
多重背包的java实现 二进制优化
import java.util.Scanner;public class 多重背包 {private static int[] dp;/*** 输入* * 第1行,2个整数,N和W中间用空格隔开。N为物品的种类,W为背包的容量。(1 * N + 1行,每行3个整数,Wi,Pi和Ci分别是物品体积、价值和数量。(1 * 200)* * 输出原创 2016-07-22 13:38:54 · 1118 阅读 · 0 评论