java
飞鸟来了
这个作者很懒,什么都没留下…
展开
-
AOP创建切面
AOP,就是面向切面编程。 什么是切面呢?增强+切点就是切面。需要向切面里注入一个增强 前面说了增强,这里我们说一说切点,切点就是特定类的特定方法。 Pointcut = ClassFilter + MethodMatcher. Advisor = Pointcut + Advice 三种切面类型:一般切面切点切面引介切面Advisor:一般切面,只包含增强,一般不会直接...原创 2017-09-25 17:24:26 · 362 阅读 · 0 评论 -
java中正则表达式
"123".matches("-?\\d+");"+911".matches("(-|\\+)?\\d+"); \\+ +是特殊字符需要转义"^[abc][ed]$"//学习正则表单式规则量词 贪婪型(尽可能多的匹配) 勉强型(最少的匹配) 占有型(java语言才有的)和贪婪类似有区别 X? X??原创 2017-12-26 17:49:00 · 427 阅读 · 0 评论 -
JVM简介
一张图了解JVM原创 2018-01-22 12:25:40 · 161 阅读 · 0 评论 -
java注解
javaSE5提供了注解。 内置了三种标准注解,以及四种元注解。 标准注解:@override 覆盖的方法@deprecated 不建议使用的方法@SuppressWarnings 关闭不当的警告信息 元注解:专门负责新注解的创建1.@Target 表示注解可以用于什么地方ElementType.CONSTRUCTOR:构造器.Fileld:域声明.LOCAL_V原创 2017-09-26 21:11:44 · 176 阅读 · 0 评论 -
java匿名内部类
为何需要内部类: java中不能多继承。(虽然接口可以多继承),但是抽象类,具体类类还是无法多继承的。内部类类似于组合方式解决这个。 但是通过使用内部类可以实现。 成员内部类(和方法同级别) 内部类可以访问外部类的所有方法和属性(内部类对象会秘密的捕获一个外围类的引用由编译器完成),外部类的非静态方法使用内部类和普通类一样,一般会有指向内部类的引用,其他方法需要用outc...原创 2017-10-12 21:44:35 · 167 阅读 · 0 评论 -
多线程学习笔记
进程:正在运行的程序,独立完成一个功能。 线程:组成进程的一部分。 - 单线程 - 多线程 每个功能对于CPU的独立执行路径,就是线程。 建立程序单独的执行路径Run,start创建新线成 Thread:所有的线程都是Thread对象。三种实现方法: extend Thread, implements Runnable, 可以实现多继承,线程,任务解耦合。 ...原创 2018-03-12 16:40:25 · 159 阅读 · 0 评论 -
集合学习笔记
集合存储对象,遍历集合取出对象。集合特性。 collection 接口。Collection toArray() Object[] 返回对象数组 size() 对象集合 contains(Object o) 是否存在 clear() 清空 remove() 删除第一个遇到的,返回bool值...原创 2018-03-13 16:53:46 · 131 阅读 · 0 评论 -
IO学习笔记
关于IO中的各种类库工具: File:文件或者目录; File.list(); File.listFile(); //遍历文件目录File.canRead(); File.getPath();//这是File的属性。byte:字节,1个字节 char:字符:2个字节字节流:InputStream OutputStream 字符流:Reader W...原创 2018-03-08 17:33:40 · 200 阅读 · 0 评论 -
数据结构学习笔记-树
树 树 N 个节点,N-1个边 树叶,兄弟,祖父,孙子,路径(n1-n2的路径),深度(root-nx的长度),高度(nx-树叶的最长距离),祖先,后裔,真祖先,真后裔 class TreeNode{ Object element; TreeNode firstChild; TreeNode next...原创 2018-03-14 10:31:18 · 213 阅读 · 0 评论 -
java 持有对象,容器
List Set Queue Mapcollection ListSetQueueMap LIuyang原创 2017-12-25 18:02:15 · 193 阅读 · 0 评论 -
面向对象-多态
多态:引用变量具体会所指向哪个类的实例对象,以及发出的方法调用的是哪个类中的方法必须运行时才能确定。父类引用: -> 子类对象 (自动向上转型)调用方式时:只能调用父类的方法:子类重写了,就是调用子类的。调用子类重写的没有,没有就去调用继承的父类方法。不能多继承其实就是这个原因。其实在继承链中对象方法的调用存在一个优先级:this.sho原创 2017-09-13 10:15:00 · 140 阅读 · 0 评论 -
泛型(后期补充)
容器类:存放类的容器。 https://blog.csdn.net/s10461/article/details/53941091这个容器存放的类不确定。比如定义object。这样就可以存放任意类型的类了。但是我们一般会使用容器存放一种类型的类。这时候就可以使用class person<T>Java中是伪泛型,只是编译的时候有用,编译后的class 文件中没有泛型。 T...原创 2017-10-26 22:55:55 · 163 阅读 · 0 评论 -
Java反射实现原理
Java 反射一.类加载器:寻找字节码文件并构造出类在JVM内部表示对象的组件。 1.装载:查找导入class文件 2.连接:a.校验,检查class文件的正确性。b.准备,给类的静态变量分配空间。c.解析,将引号应用转换成直接引用。 3.初始化:对静态变量,静态代码块执行初始化工作。 JVM 会产生三个ClassLoader: 根加载器 c++编写,在Java中不存在,负责装载JR原创 2017-09-19 15:26:38 · 650 阅读 · 0 评论 -
AOP面向切面编程
一。为何要用AOP 为了代码的复用我们将相同的方法抽出出来,通过继承的方法实现。但是有时候,相同的方法却不能抽取出来。 图中粗体代码是用来监测性能的。比如创建删除需要多少时间。这时候虽然他们都有 transManaget.beginTransaction(); 等方法,但是这些方法和业务紧密连接在一起。无法抽取出来。 代码关系,如图所示,这就像一个树的切面。这也是切面概念的由来。 ...原创 2017-09-20 13:48:21 · 160 阅读 · 0 评论 -
AOP增强详解
增强是AOP的核心部分之一,它包含逻辑代码和方位,增强就是一重最简单的切面。 增强的类型:前置增强后置增强环绕增强异常抛出增强引介增强package com.smart.advice; public interface Waiter { //接口 void greetTo(String name); void serveTo(String name);}...原创 2017-09-21 14:59:49 · 631 阅读 · 0 评论 -
Java项目文件目录结构介绍
Java中有三个比较容易弄混的“文件夹”。folder 文件夹 ,普通的文件夹,IDE不会对他检查source folder 源文件夹 用于存放Java源代码的package java 中的包,必须存放在source folder 下。src main java webapp resources文件视图下的东西。原创 2017-10-10 15:18:25 · 10634 阅读 · 0 评论 -
接口简介
看接口之前,我们先看看抽象类,他是普通类和接口之间的一种中庸之道。包含抽象方法的类是抽象类,抽象方法的定义:abstract void f(); 类强制是用abstract修饰。 抽象类不能被实例化,可以被继承。导出类必须覆盖原抽象类的所有抽象方法,否则导出类也是抽象类。 抽象方法其实就是定义 的接口。接口:就是一种完全抽象的类,所有的方法都是抽象方法。 接口的定义方式: [修饰符] int原创 2017-09-25 21:32:16 · 175 阅读 · 0 评论 -
Java项目中Class:xxx
文件定位的时候我们经常使用: classpath:xxx.这个classpath.会自动查找resources文件夹下(不是名字叫resources,而是指文件类型),以及WEB-INF下是否有与XXX匹配的文件。classpath:/xxx 和 classpath:xxx是一样的 classpath:xxx 和 classpath*:xxx是不一样的,前者表示引入第一个,后者表示引入多个。原创 2017-10-12 12:27:05 · 436 阅读 · 0 评论 -
AOP动态代理织入
在之前一篇中,我们介绍了什么是AOP面向切面编程。下面以Spring AOP 为例来详细讲解。 Spring AOP 采用的是动态代理织入 代理是实现AOP的底层技术。 下面介绍两种代理技术: 1. JDK代理技术 2. CGlib代理技术 JDK代理: InvocationHandler 是一个接口,增强逻辑代码就是放在这个接口的实现类中。package com.smart.pr原创 2017-09-20 17:15:46 · 689 阅读 · 0 评论 -
java中的关键字
this :(当前对象) this 关键字只能在方法内部使用,表示调用该方法的对象的引用。int x = 12;this(x);this有了参数列表,这将产生对符合此参数列表的某个构造器的明确调用。构造器的调用只能在构造器方法中使用。static: 成员变量,方法,代码块,内部类: static 变量:类加载了就存在了,所有的实例用同一个。 static 方法:只能访...原创 2017-10-26 23:49:47 · 198 阅读 · 0 评论 -
servlet 学习笔记
服务器与容器的关系: 各种容器的区别: 容器,装东西的。这里指可以部署引用程序并运行的环境。屏蔽了服务器平台的差异化。 servlet容器 :实现了servlet技术规范的部署环境。可以部署运行servlet程序web容器:可以部署多个web应用程序的环境java web容器:实现了java ee 规定的web应用技术规范(servlet,jsp)的部署环境 java we...转载 2018-04-27 14:22:16 · 174 阅读 · 0 评论