随笔分类 -  Java

摘要:进程和线程的区别:进程是指运行中的应用程序,每一个进程都有自己的独立的内存空间,一个应用程序可以同时启动多个进程,比如多次打开同一个应用软件,多个火狐浏览器同时打开线程是指进程中的一个执行流程,一个进程可以有多个线程组成,一个进程中可以同时运行多个不同的线程,分别执行不同的任务,当进程中的多个线程同... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(812) 评论(0) 推荐(0)
摘要:Java总是在讨论是传递还是引用传递,Java没有像C语言那样拥有指针,在看到引用传递和值传递很多的解释之后,更相信引用传递和值传递归根到底都是值传递,只不过引用传递的时候看上去很高大上,其实是把变量的地址值,注意是地址值传递过去,赋值给其他的变量。看一个值传递的例子:package demo_pa... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(127) 评论(0) 推荐(0)
摘要:介绍:享元模式意思是说系统中含有很多相同的对象,这时候没有必要用这么多的相同的对象,既大量消耗内存又没有用,这个对象只要一个就可以了,大家共享一个对象,享元模式主要减少了对象的创建,以减少内存和提高性能为目的。享元模式试图重用已有对象,找到可以用的对象就用,如果没有找到再进行创建。提到享元模式,就要... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(165) 评论(0) 推荐(0)
摘要:介绍:适配器模式是将一个类的接口转换成用户希望的另一种接口最好的例子就是笔记本电脑的电源适配器,家用的电源是220v的而电脑承受不了这么高的电压,假设他可以承受15v的电压,怎么办呢 ,我们不能把家里的电压变成15v,也不能把电脑的电压提高到220v,最好的办法就是我们需要用一个东西转换他,把220... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(143) 评论(0) 推荐(0)
摘要:装饰器设计模式顾名思义就是装饰某个对象,让一个功能单一的对象拥有一些其他的功能,这些功能的添加是动态的。用户可以随意的扩展原有对象的功能。一方面代替了继承,相对于继承带来的功能扩展,装饰器模式可以理解为动态的扩展,用户需要什么就扩展什么功能,非常灵活,而继承带来的缺点就是不方便修改,是静态的扩展。由... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(377) 评论(0) 推荐(0)
摘要:单例模式是非常常用的设计模式,他确保了一个类只有一个对象,并且这个对象是自己创建的,外界可以获取使用到这个对象。单例模式一般有两种:懒汉式,饿汉式(其实还有一种登记式,把创建的对象放在map集合中,有就直接用,没有就创建)单例模式通过构造方法私有化,外界无法创建对象,下面是两种单例的实现饿汉式:pa... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(289) 评论(0) 推荐(0)
摘要:Java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。instanceof关键字的作用是判断一个对象是否是一个具体类的实例,我们在重写equals方法中要先判断是否是同一... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(8938) 评论(0) 推荐(1)
摘要:jdk提供了javap命令用于查看字节码来查看程序执行赋值的顺序,看懂这些关键字可以很好的理解程序执行的过程转自:http://www.cnblogs.com/duanxz/archive/2014/05/14/3724426.html#topJava栈和局部变量操作Java虚拟机是基于栈的机器,几... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(561) 评论(0) 推荐(0)
摘要:除了两种浮点型,剩下的几种基本数据类型的包装类几乎都实现了常量池,有好处用数据的时候直接去拿,没有再去创建,坏处是在程序编译的时候就存入大量数据不管用不用到。下面是一篇很好的文章,很详细,转自:http://www.hollischuang.com/archives/1058Integer 类在对象... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(334) 评论(0) 推荐(0)
摘要:看了很多文章事实证明之前的通过new创建String对象只有一个是错误的,实际上创建一个或者创建两个对象,一个在堆区,一个在常量池,当常量池中已经存在就不会创建。看了一篇非常好的文章http://www.cnblogs.com/wxgblogs/p/5635099.html,详细讲述了创建Strin... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(603) 评论(0) 推荐(0)
摘要:参考:http://blog.csdn.net/ghsau/article/details/17839983http://blog.csdn.net/never_cxb/article/details/50543289最近想写一个注册界面,好多的网站注册的时候需要填写邮箱,向邮箱发一个验证链接,怎么... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(179) 评论(0) 推荐(0)
摘要:工厂模式的定义就是通过工厂创建对象,当用户需要创建大量不同的对象的时候,通过定义一个创建对象的接口,让子类自己决定创建哪一个对象,用户不再自行判断实例化哪一个对象,不用再去关心创建对象的复杂过程,我们通过创建一个工厂类,工厂类的作用就是判断需要创建哪个对象,并实例化。工厂模式分为简单工厂,抽象工厂和... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(134) 评论(0) 推荐(0)
摘要:代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式顾名思义,有个代理,那这个代理做什么工作呢?我们平时生活中,我们遇到过的代理就是各个品牌的代理,一个产品不能让广大的消费者... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(291) 评论(0) 推荐(0)
摘要:介绍:模板模式定义了一个模板抽象类,这个抽象类中定义了方法调用的形式,顺序。子类通过重写对方法进行实现,但是调用方式不能改变。模板模式中的模板中定义了核心的代码骨架,一些有着不同方式实现的代码放在子类中,模板模式规定了方法执行的方式或者可以说是方法的执行顺序,执行结构,使得子类只能遵守这些规定。模板... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(195) 评论(0) 推荐(0)
摘要:一、HashMap介绍集合中的Map集合有两个实现类分别是HashMap和TreeMap,这里先说HashMap,TreeMap在以后的文章讲。HashMap,既然前面带了Hash,那么他一定用到了hash算法,HashMap的结构就是一个hash表,注意在HashMap中可以添加一个键为null和... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(125) 评论(0) 推荐(0)
摘要:在java集合中有一种集合Set(集),他有两个实现类,分别是HashSet,TreeSet。下面仔细分析HashSet源码。看了HashSet的源码就会发现HashSet的底层实现是利用HashMap,所以对于HashSet的一些操作都是利用HasgMap的操作实现的。生命类一个HashMap成员... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(140) 评论(0) 推荐(0)
摘要:在一个类的里面再定义的类,叫做内部类,也可以叫做寄生类,在平时的编程中很少用到内部类,而且显的特别乱。但是内部类也是有很大作用的:提供了更好的封装,把类隐藏在外部类中,这样其他的类不能调到。内部类可以使用外部类的所有数据,包括private修饰的。在jdk中哟哟很多地方都用到了内部类,在集合的源码中... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(221) 评论(0) 推荐(0)
摘要:对于数组我们应该很熟悉,一个数组在内存中总是一块连续的存储空间,数组的创建使用new关键字,数组是引用类型的数据,一旦第一个元素的位置确定,那么后面的元素位置也就确定了,数组有一个最大的局限就是数组一旦创建,他的长度就是固定的,不可以进行更改,如果数组空间不够大,唯一的方法就是再创建一个大的数组,把... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(2104) 评论(0) 推荐(0)
摘要:迭代器模式是一种应用很广泛的设计模式,提供了一种方法顺序的访问一个集合中的元素,但是还不暴露该对象的内部细节。提供了一种方法遍历访问整个聚合的对象,这个聚合的对象一般是一个集合。把元素间的移动交给迭代器,不需要聚合对象的操作,就可以实现整个聚合对象的遍历。源码分析:在java中就有迭代器模式的实现,... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(242) 评论(0) 推荐(0)
摘要:由于java是一种面向对象的语言,万事万物皆对象,用户定义一个类,这是一个广泛的定义,需要用户具体化,实例化这个广泛的类,确定这个具体的对象。在java程序中,对象可以被显式创建和隐式创建,主要说一下显式的创建对象的方式。在之前被问过创建对象有几种方式,当时就回答了有一种,用new关键字创建,这是最... 阅读全文
posted @ 2017-11-10 21:29 In_new 阅读(20078) 评论(0) 推荐(2)