自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 Java8新特性之Stream流

1. 集合流的简介1.1. 集合的流式编程的简介Stream是JDK1.8之后出现的新特性,也是JDK1.8新特性中最值得学习的两种新特性之一。(另外一个是lambda表达式)。Stream是对集合操作的增强,流不是集合的元素,不是一种数据结构,不负责数据的存储的。流更像是一个迭代器,可以单向的追历一个集合中的每一个元素,并且不可循环1.2. 为什么要使用集合的流式编程有些时候,对集合中的元素进行操作的时候,需要使用到其他操作的结果。在这个过程中,集合的流式编程可以大幅度的简化代码的数量,将数

2020-09-17 09:15:40 311

原创 Java8新特性之Lambda表达式

1. Lambda表达式的简介1.1. Lambda表达式的概念lambda表达式,是Java8的一个新特性,也是Java8中最值得学习的新特性之一。lambda表达式,从本质来讲,是一个匿名函数。可以使用这个匿名函数,实现接口中的方法。对接口进行非常简洁的实现,从而简化代码。1.2. Lambda表达式对接口的要求虽然说,lambda表达式可以在一定程度上简化接口的实现。但是,并不是所有接口都可以使用lambda表达式来简洁实现的。lambda表达式毕竟只是一个匿名方法。当实现的接口方

2020-09-15 20:55:46 148 1

原创 Java多线程二(对象及变量的并发控制)

2、对象及变量的并发控制学会了多线程的基本使用后,我们该关心线程的安全问题,看一下我们该如何写出安全的程序。2.1 synchronized 同步方法“非线程安全”会在多个线程对同一个对象中的实例变量进行并发访问时访问,产生的后果就是“脏读”。也就是取到的数据其实是被更改过的。而“线程安全”就是已获得的实例变量的值是经过同步处理的,不会出现脏读的现象。方法内的变量为线程安全“非线程安全”问题仅存在于“实例变量”中,方法内部的私有变量,不会出现这种问题。实例变量非线程安全如果多个线程共同访问

2020-07-28 14:20:02 396

原创 Java安全框架Shiro

一、Shiro为什么要用shiro:1、项目中的密码是否可以明文存储?2、是否任意访客,无论是否登录都可以访问任何功能?3、项目中的各种功能操作,是否是所有用户都可以随意使用?1.1 Shiro是什么* Apache Shiro 是 Java 的一个安全框架。* 对比 Spring Security,可能没有 Spring Security 做的功能强大,但是在实际工作时可能并不需要那么复杂的东西,所以使用小而简单的 Shiro 就足够了。* Shiro 可以帮助我们完成:认证、授权、加

2020-07-17 22:31:33 848

原创 Java多线程一(线程API及基本使用)

1、多线程技能多线程是异步的,代码顺序并不能当成是线程的执行顺序,线程被调用的时机是随机的1.1 使用多线程一个进程正在运行时至少会有一个线程正在运行。public static void mian() #main方法的线程由JVM创建的。继承Thread类实现Runnable接口从源码上不难发现,Thread实现了Runnable接口,它们之间具有多态关系。继承Thread类的最大局限就是不支持多继承。需要多继承则可以实现Runnable接口。二者工作性质一样,没有本质上的区别。

2020-07-16 17:07:39 548

原创 Linux基础知识

开关机开机服务开机会启动许多程序。在Windows叫做"服务"(service),在Linux叫做"守护进程"(daemon)。登录方式有三种:命令行登录ssh登录图形界面登录最高权限账户root,可以操作一切。关机Linux一般作为服务器,很少遇到关机得操作。不得已才关机。关机命令:shutdownsync #将数据内存同步到硬盘中。开机前应该做的事情,防止数据丢失shutdown #关机指令,具体操作如下shutdown -h 10 #十分钟后关机shutd

2020-07-15 10:37:41 1433 2

原创 设计模式之适配器模式

适配器模式将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。角色分析目标接口:客户所期待的接口,目标可以是具体的或抽象的类,也可以是接口。需要适配的类:需要适配的类或者适配者类。适配器:通过包装一个需要适配的对象,把原接口转换成目标对象。举个例子小结对象适配器优点一个对象适配器可以把多个不同的适配者适配到同一个目标。可以适配一个适配者的子类,由于适配器和适配者之间是关联关系,根据“里氏代换原则”,

2020-05-22 19:45:56 157

原创 设计模式之原型模式

原型模式非常简单,使用原型实例指定要创建对象的类型,通过复制这个原型来创建新对象。说白了,就是对一个对象的深拷贝深拷贝我们可以使用object类的clone方法来实现对象的克隆。当我克隆的对象不包含引用类型的属性时,我们的深拷贝不会有任何问题。一旦出现引用类型的属性,我们克隆的对象与原对象执行的是同一个引用类型的属性。这时候,我们只需要重写我们原对象的clone方法,在clone方法中,对引用类型的对象也进行克隆。举个例子//getset,toString,构造

2020-05-21 23:24:46 128 1

原创 设计模式之建造者模式

建造者模式建造者模式也属于创建型模式,它提供了一种创建对象的最佳方式。定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。主要作用:在用户不知道对象建造过程和细节的情况下直接创建复杂的对象。用户只需要给定出指定复杂对象的类型和内容,建造者模式负责按顺序创建复杂对象(把内部的建造过程和细节隐藏起来)例子:工厂(建造者模式):负责制造汽车(组装过程和细节在工厂内)汽车购买者(用户):你只需要说出你需要的型号(对象的类型和内容),然后直接购买就可以使

2020-05-14 22:31:04 126

原创 设计模式之工厂模式

工厂模式作用:实现了创建者和调用者的分离详细分类:简单工厂模式工厂方法模式抽象工厂模式OOP七大原则开闭原则:一个软件的实体应当对扩展开放依赖倒转原则:要针对接口编程,不要准对实现编程迪米特法则:只与你直接的朋友通信,而避免和陌生人通信核心本质:实例化对象不使用new,用工厂方法替代将选择实现类,创建对象统一管理和控制。从而将调用者跟我们的实现...

2020-05-06 22:42:54 173

原创 设计模式思想

设计模式的目的编写软件过程中,程序员面临着来自耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性等多方面挑战,设计模式是为了让程序,具有更好的:代码重用性:相同功能的代码,不用多次编写可读性:编程规范性,便于其它程序员的阅读和理解可扩展性:当需求增加新的功能时,非常的方便,称为可维护性可靠性:当我们增加新的功能时,对原来的功能没有影响使程序呈现高内聚,低耦合的特性设计模式包含了...

2020-05-05 19:43:45 617

空空如也

空空如也

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

TA关注的人

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