随笔分类 -  Java

java 动态代理 Proxy.newProxyInstance 使用心法
摘要:使用JDk的Proxy类的静态方法newProxyInstance ,让JVM自动生成一个新的类,类中包含了inerfaces参数中的所有方法,每个方法都调用h.invoke 方法 AOP 动态代理 package com.atguigu.spring.aop; import java.lang.r 阅读全文

posted @ 2019-11-14 22:02 手握太阳 阅读(5686) 评论(0) 推荐(0)

java-Enum
摘要:转-https://www.cnblogs.com/liaojie970/p/6474733.html Java Enum原理 public enum Size{ SMALL, MEDIUM, LARGE, EXTRA_LARGE }; 实际上,这个声明定义的类型是一个类,它刚好有四个实例,在此尽量 阅读全文

posted @ 2019-02-20 20:04 手握太阳 阅读(286) 评论(0) 推荐(0)

java-final关键字
摘要:用来修饰数据,包括成员变量和局部变量,该变量只能被赋值一次且它的值无法被改变。对于成员变量来讲,我们必须在声明时或者构造方法中对它赋值; 用来修饰方法参数,表示在变量的生存期中它的值不能被改变; 修饰方法,表示该方法无法被重写; 修饰类,表示该类无法被继承。 阅读全文

posted @ 2019-02-20 19:42 手握太阳 阅读(156) 评论(0) 推荐(0)

java-this关键字
摘要:(1)this调用本类中的属性,也就是类中的成员变量; this.name=name; (2)this调用本类中的其他方法; (3)this调用本类中的其他构造方法,调用时要放在构造方法的首行。 public class Student { //定义一个类,类的名字为student。 public Student() { //定义一个方法,名字与类相同故为构造方法 ... 阅读全文

posted @ 2019-02-20 19:32 手握太阳 阅读(158) 评论(0) 推荐(0)

java-不定项参数(可变参数)的作用和使用方式
摘要:引言: 我们在编写方法的过程中,可能会遇见一个方法有不确定参数个数的情况。一般我们会用方法重载来解决问题: 但是当参数多的时候就会显得很繁琐,同时每次扩展都会很麻烦。于是我们可以使用数组作为参数: But,这样还是有个准备参数的过程(还要构造一个数组,麻烦啊)。于是我们可以使用不定项参数(可变参数) 阅读全文

posted @ 2019-02-14 22:01 手握太阳 阅读(845) 评论(0) 推荐(1)

java-newInstance()和new()
摘要:在Java开发特别是数据库开发中,经常会用到Class.forName( )这个方法。通过查询Java Documentation我们会发现使用Class.forName( )静态方法的目的是为了动态加载类。在加载完成后,一般还要调用Class下的newInstance( )静态方法来实例化对象以便 阅读全文

posted @ 2019-02-14 21:47 手握太阳 阅读(367) 评论(0) 推荐(0)

java-泛型
摘要:我们将第一行声明初始化list的代码更改一下,编译器会在编译阶段就能够帮我们发现类似这样的问题。 通过上面的例子可以证明,在编译之后程序会采取去泛型化的措施。也就是说Java中的泛型,只在编译阶段有效。在编译过程中,正确检验泛型结果后,会将泛型的相关信息擦出,并且在对象进入和离开方法的边界处添加类型 阅读全文

posted @ 2019-02-14 20:50 手握太阳 阅读(130) 评论(0) 推荐(0)

java-整型数值 用 16进制转换、2进制转换-Integer.toHexString
摘要:负数为什么要用补码表示 为了显示一个byte型的单字节十六进制(两位十六进制表示)的编码,请使用: Integer.toHexString((byteVar & 0x000000FF) | 0xFFFFFF00).substring(6) byteVar & 0x000000FF的作用是,如果byt 阅读全文

posted @ 2019-02-13 20:44 手握太阳 阅读(3533) 评论(0) 推荐(0)

java-toString()、(String)、String.valueOf 的区别
摘要:Object x = new Integer(1218); System.out.println((String)x); 如上代码编译通过,运行时报错: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String toString() toString()是在Obje... 阅读全文

posted @ 2019-02-13 18:28 手握太阳 阅读(764) 评论(0) 推荐(0)

字符串编码
摘要:将上述二进制通过GBK进行解码,根据GBK规则,第一个字节高位为1,使用双字节编码, “11100100 10111101”解码成“浣”,“10100000”对于GBK来说是非法的,就解码成了一种特殊字符“�”。 但实际中,有一种情况,是100%可以将乱码还原成最初的字符串。就是任意编码格式编码,I 阅读全文

posted @ 2019-01-25 22:03 手握太阳 阅读(749) 评论(0) 推荐(0)

java-类加载器
摘要:双亲委派模式是在Java 1.2后引入的,其工作原理的是,如果一个类加载器收到了类加载请求,它并不会自己先去加载,而是把这个请求委托给父类的加载器去执行,如果父类加载器还存在其父类加载器,则进一步向上委托,依次递归,请求最终将到达顶层的启动类加载器,如果父类加载器可以完成类加载任务,就成功返回,倘若 阅读全文

posted @ 2018-12-08 10:26 手握太阳 阅读(239) 评论(0) 推荐(0)

JVM 调优 - jhat
摘要:Java命令学习系列(五)——jhat 2016-01-21 分类:Java 阅读(8708) 评论(3) 阿里大牛珍藏架构资料,点击链接免费获取 jhat(Java Heap Analysis Tool),是一个用来分析java的堆情况的命令。之前的文章讲到过,使用jmap可以生成Java堆的Du 阅读全文

posted @ 2018-12-01 12:18 手握太阳 阅读(1233) 评论(0) 推荐(1)

JVM 调优 - jstat
摘要:Java命令学习系列(四)——jstat 2015-07-31 分类:Java 阅读(11041) 评论(1) 阿里大牛珍藏架构资料,点击链接免费获取 jstat(JVM Statistics Monitoring Tool)是用于监控虚拟机各种运行状态信息的命令行工具。他可以显示本地或远程虚拟机进 阅读全文

posted @ 2018-12-01 12:15 手握太阳 阅读(127) 评论(0) 推荐(0)

JVM 调优 - jmap
摘要:Java命令学习系列(三)——Jmap 2015-05-16 分类:Java 阅读(17065) 评论(9) 阿里大牛珍藏架构资料,点击链接免费获取 Jmap jmap是JDK自带的工具软件,主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节。可以使用jmap生 阅读全文

posted @ 2018-12-01 12:15 手握太阳 阅读(263) 评论(0) 推荐(0)

JVM 调优 - JPS
摘要:Java命令学习系列(一)——Jps 2015-04-16 分类:Java 阅读(23993) 评论(7) 阿里大牛珍藏架构资料,点击链接免费获取 jps位于jdk的bin目录下,其作用是显示当前系统的java进程情况,及其id号。 jps相当于Solaris进程工具ps。不象”pgrep java 阅读全文

posted @ 2018-12-01 12:13 手握太阳 阅读(364) 评论(0) 推荐(0)

JVM调优—Jstack
摘要:Java命令学习系列(二)——Jstack jstack是java虚拟机自带的一种堆栈跟踪工具。 功能 jstack用于生成java虚拟机当前时刻的线程快照。线程快照是当前java虚拟机内每一条线程正在执行的方法堆栈的集合,生成线程快照的主要目的是定位线程出现长时间停顿的原因,如线程间死锁、死循环、 阅读全文

posted @ 2018-12-01 11:50 手握太阳 阅读(308) 评论(0) 推荐(0)

java异常类的妙用
摘要:异常类的妙用 以往在使用异常时,只是知道通过异常类的构造方法设置一些出错信息,此外最多就是把引起该异常的原因通过Throwable类的子类一同设置进去。今天在分析springSecurity3.0.5的框架时,看到AuthenticationException这个异常类(用在验证时)的源码,发现这个 阅读全文

posted @ 2018-12-01 11:44 手握太阳 阅读(492) 评论(0) 推荐(0)

JNDI数据源的配置
摘要:只为成功找方法,不为失败找借口! JNDI学习总结(一)——JNDI数据源的配置 一、数据源的由来 在Java开发中,使用JDBC操作数据库的四个步骤如下: ①加载数据库驱动程序(Class.forName("数据库驱动类");) ②连接数据库(Connection con = DriverMana 阅读全文

posted @ 2018-10-25 21:22 手握太阳 阅读(317) 评论(0) 推荐(0)

ajax跨域问题以及解决方案
摘要:转:https://blog.csdn.net/csdn_ds/article/category/6937392/3 在工作中,大家应该都遇到过ajax跨域问题,浏览器的错误如下: XMLHttpRequest cannot load http://目标地址No 'Access-Control-Al 阅读全文

posted @ 2018-09-15 17:57 手握太阳 阅读(145) 评论(0) 推荐(0)

为何stop()和suspend()方法不推荐使用(转)
摘要:stop()方法作为一种粗暴的线程终止行为,在线程终止之前没有对其做任何的清除操作,因此具有固有的不安全性。 用Thread.stop()方法来终止线程将会释放该线程对象已经锁定的所有监视器。如果以前受这些监视器保护的任何对象都处于不连贯状态,那么损坏的对象对其他线程可见,这有可能导致不安全的操作。 阅读全文

posted @ 2018-07-24 22:58 手握太阳 阅读(1618) 评论(0) 推荐(0)

导航