11 2015 档案
摘要:原始问题: 关于异常中,何时在该类中处理,何时抛给调用类处理,比较纠结。比如IO中new FileInputStream(),new InputStreamReader(fStream, "UTF-8");in.readLine()等他们异常哪些本类中处理,还是都抛给调用者。讨论: 李:其实对于...
阅读全文
摘要:1. Java.lang.NullPointerException 这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。对数组操作中...
阅读全文
摘要:在程序设计中,进行异常处理是非常关键和重要的一部分。一个程序的异常处理框架的好坏直接影响到整个项目的代码质量以及后期维护成本和难度。试想一下,如果一个项目从头到尾没有考虑过异常处理,当程序出错从哪里寻找出错的根源?但是如果一个项目异常处理设计地过多,又会严重影响到代码质量以及程序的性能。因此,如何高...
阅读全文
摘要:相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问到的地方,今天就来和大家一起学习一下String、StringBuilder和StringBuffer这几个类,分析它们的异同点以及了解各个类适用的场景。下面是本文的目录大纲: 一.你了解String类吗? 二.深...
阅读全文
摘要:1 StringString:字符串常量,字符串长度不可变。Java中String是immutable(不可变)的。String类的包含如下定义:/** The value is used for character storage. */private final char value[];/**...
阅读全文
摘要:String与StringBuffer的区别简单地说,就是一个变量和常量的关系。StringBuffer对象的内容可以修改;而String对象一旦产生后就不可以被修改,重新赋值其实是两个对象。StringBuffer的内部实现方式和String不同,StringBuffer在进行字符串处理时,不生成...
阅读全文
摘要:java中有一个FilenameFilter的接口,能够过滤得到指定类型的文件或者目录,其中必须重写accept(File file,String path)方法public class DirFilter implements FilenameFilter{ private String typ...
阅读全文
摘要:java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包。1.简介:java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包。它包括两个类:Pattern和Matcher 。Pattern: 一个Pattern是一个正则表达式经编译...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao这一节,主要来学习jvm的基本结构,也就是概述。说是概述,内容很多,而且概念量也很大,不过关于概念方面,你不用担心,我完全有信心,让概念在你的脑子里变成图形,所以只要你有耐心,仔细,认真,并发挥你的想象力,这一章之后你会充...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 本节源码:http://download.csdn.net/detail/yfqnihao/4863854 这一节,我们会简单的描述一下jvm访问控制器的栈校验机制。 这节课,我们还是以实践为主,什么是栈校验机制,讲一百...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao/article/details/8271665 这一节,我们要学习的是访问控制器,在阅读本节之前,如果没有前面几节的基础,对你来说可能会比较困难! 本节实验源码下载:http://downlo...
阅读全文
摘要:欢迎转载请说明出处:http://blog.csdn.net/yfqnihao/article/details/8271415 前面一节,我们做了一个简单的实验,来说明什么是策略文件,在文章的最后,也顺带的讲了一下什么是策略,还有策略的作用。 为了引出另外一个很重要的概念Protec...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao/article/details/8271407 课程源码:http://download.csdn.net/detail/yfqnihao/4866503 什么是java的策略,什么又是策略文件。 今天我换一下笔记的方式...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao/article/details/8267669 课程源码:http://download.csdn.net/detail/yfqnihao/4866500 这一节,以实践为主,在跟着我做相应的操作之前,...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 前言: 如果你循序渐进的看到这里,那么说明你的毅力提高了,jvm的很多东西都是比较抽像的,如果不找相对应的代码来辅助理解,其实很难有个比较形象的思维,前面我努力的尝试通过将概念投射到代码的方式去讲解jvm的...
阅读全文
摘要:安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用AccessController的checkPerssiom方法,访问控制器AccessController的栈检查机制又遍历整个PerssiomCollect...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类装载器和安全管理器是可以被动态扩展的,或者说,他们是可以...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao前面已经简述了java的安全模型的两个组成部分(类装载器,class文件校验器),接下来学习的是java安全模型的另外一个重要组成部分安全管理器。 安全管理器是一个单独的对象,在java虚拟机中,它在访问控制-对于外部资源...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 前面的学习我们知道了class文件被类装载器所装载,但是在装载class文件之前或之后,class文件实际上还需要被校验,这就是今天的学习主题,class文件校验器。 class文件 校验器,保证class文件内容有正确...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 在了解java虚拟机的类装载器之前,有一个概念我们是必须先知道的,就是java的沙箱,什么是java的沙箱,java的沙箱总体上经历了这么一个过程,从简单的java1.0的基础沙箱到java1.1的基于签名和认证的沙箱到...
阅读全文
摘要:欢迎装载请说明出处:http://blog.csdn.net/yfqnihao java的class只在需要的时候才内转载入内存,并由java虚拟机的执行引擎来执行,而执行引擎从总的来说主要的执行方式分为四种, 第一种,一次性解释代码,也就是当字节码转载到内存后,每次需要都会重新的解析...
阅读全文
摘要:在阎宏博士的《JAVA与模式》一书中开头是这样描述观察者(Observer)模式的: 观察者模式是对象的行为模式,又叫发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。...
阅读全文
摘要:观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 松耦合的威力: 当两个对象之间松耦合,它们依然可以交互,但是不太清楚彼此的细节。 观察者模式提供了一种对象设计,让主题和观察者之间松耦合。 关于观察者的一切,主题只知道观察者实现...
阅读全文
摘要:Ctrl+1快速修复(最经典的快捷键,就不用多说了)Ctrl+D:删除当前行Ctrl+Alt+↓复制当前行到下一行(复制增加)Ctrl+Alt+↑复制当前行到上一行(复制增加)Alt+↓当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑当前行和上面一行交互位置(同上)Alt+←...
阅读全文
摘要:一般来说,有4中内部类:常规内部类、静态内部类、局部内部类、匿名内部类。一.常规内部类:常规内部类没有用static修饰且定义在在外部类类体中。1.常规内部类中的方法可以直接使用外部类的实例变量和实例方法。2.在常规内部类中可以直接用内部类创建对象3.代码如下:package com.InnerCl...
阅读全文
摘要:访问修饰符修饰符class类名称extends父类名称implement接口名称(访问修饰符与修饰符的位置可以互换)访问修饰符名称说明备注public可以被所有类访问(使用)public类必须定义在和类名相同的同名文件中package可以被同一个包中的类访问(使用)默认的访问权限,可以省略此关键字,...
阅读全文
摘要:我们在使用List,Set的时候,为了实现对其数据的遍历,我们经常使用到了Iterator(迭代器)。使用迭代器,你不需要干涉其遍历的过程,只需要每次取出一个你想要的数据进行处理就可以了。但是在使用的时候也是有不同的。List和Set都有iterator()来取得其迭代器。对List来说,你也可以通...
阅读全文
摘要:字节流与字符流先来看一下流的概念:在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成。程序中的输入输出都是以流的形式保存的,流中保存的实际上全都是字节文件。字节流与字符流在java.io包中操作文件内容的...
阅读全文
摘要:集合类说明及区别Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMapCollection接口 Collection是最基本的集合接口,一个Collection代表一组O...
阅读全文
摘要:一. 泛型概念的提出(为什么需要泛型)?首先,我们看下下面这段简短的代码:public class GenericTest { public static void main(String[] args) { List list = new ArrayList(); ...
阅读全文
摘要:方法: 接口+组合理由:通过接口实现客户端的使用时多继承类的多类, 通过组合实现客户端内部类的实现相关功能(而且有些共用的功能可以不总是多次实现)。public interface GMapObserverDec{public voidinitTarget();public voiduninitTa...
阅读全文
摘要:在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进 行...
阅读全文
摘要:谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字。另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法。下面是本文的目录大纲: 一.final关键字的基本用法 二.深入理解final关键字 若有不正之...
阅读全文
摘要:Java中有两种类型的变量,一种是对象类型,另一种是基础类型(primitive type)。对象类型普遍采用引用的方式,比如1 List a = new ArrayList();2 List b = a;这将会构造一个列表对象,并在a和b中各自保存该对象的一个引用,所以a与b将指向同一个列表对象。...
阅读全文
摘要:JAVA是只支持单继承的,但现实之中存在多重继承这种现象,如“金丝猴是一种动物”,金丝猴从动物这个类继承,同时“金丝猴是一种值钱的东西”,金丝猴从“值钱的东西”这个类继承,同时“金丝猴是一种应该受到保护的东西”,金丝猴从“应该受到保护的东西”这个类继承。这样金丝猴可以同时从“动物类”、“值钱的东...
阅读全文
摘要:我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型有哪些?还有socket的基本函数,这些都是本文想...
阅读全文
摘要:TCP的流量控制1. 利用滑动窗口实现流量控制如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。利用滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制。设A向B发送数据。在连接建立时,B告诉了A:“我...
阅读全文
摘要:C++之所以得到这么多人的喜欢,是因为它既具有面向对象的概念,又保持了C语言高效的特点。STL 排序算法同样需要保持高效。因此,对于不同的需求,STL提供的不同的函数,不同的函数,实现的算法又不尽相同。1.1 所有sort算法介绍所有的sort算法的参数都需要输入一个范围,[begin, end)。...
阅读全文
摘要:整理一下计算机网络部分的面试常考点,参考书籍:《计算机网络》第五版谢希仁的那本,希望对大家有所帮助OSI,TCP/IP,五层协议的体系结构,以及各层协议OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。...
阅读全文
摘要:1、vector 空间运用的灵活性。 实现技术——关键是对大小的控制以及重新配置时的数据移动效率。 配置新空间、数据移动、释还旧空间 erase(int position)先移动覆盖元素之后删除最后一个 vector维护的是一个连续线性空间提供的是Random Access Iterato...
阅读全文
摘要:this指针易混的几个问题:(1)This指针本质是一个函数参数,只是编译器隐藏起形式的,语法层面上的参数。 this指针只能在成员函数中使用,全局函数、静态函数都不能使用this指针。 实际上,成员函数默认的第一个参数为T* const this(2) this在成员函数的开始前构造,在成员的...
阅读全文
摘要:定义:定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 1、找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。(把会变化的部分取出并“封装”起来,好让其他部分不会受到影响) 2、针对接口编程,而不是针对实现编程。(行为...
阅读全文
摘要:计算机网络:从OSI七层模型,到各个层的各种协议。主要讲述:传输控制协议TCP/IP协议,以及用户数据报UDP协议(区别)最重要的还是TCP的建立和终止(理解建立和终止过程)。加分点:三次握手弄成两次握手行不?为什么?四次挥手,弄成三次挥手行不?为什么?为了解决什么问题,才不能增加一步或减少一步?针...
阅读全文