
java基础
clz1314521
这个作者很懒,什么都没留下…
展开
-
Caused by:java.lang.NoSuchMethodException:xxx.xxx.类名.<init>()
调用 cls.newInstance()方法时报错:Caused by:java.lang.NoSuchMethodException:xxx.xxx.类名.<init>()xxxxxx这是因为xxx.xxx.类名类写了有参构造,那么一定要写上无参构造。如果一个类没有写有参构造,那么无参构造可以不写。类默认有无参构造,可以不写。...原创 2021-12-15 10:16:34 · 676 阅读 · 0 评论 -
JAVA Ftpclent将一个FTP中的文件直接上传到另一个FTP
JAVA Ftpclent将一个FTP中的文件直接上传到另一个FTP,支持多文件。修改多文件时,输出流第二次为空问题解决Docker环境中storeFileStream 为空的问题.由于是片段代码,大家拿去时考虑异常处理。有问题可以留言咨询。import org.apache.hadoop.hbase.shaded.org.apache.commons.net.ftp.FTPClient;public class FtpUtil { public static String rea原创 2021-09-09 11:53:17 · 1131 阅读 · 0 评论 -
java虚拟机工作原理
一、类加载器首先来看一下java程序的执行过程。 从这个框图很容易大体上了解java程序工作原理。首先,你写好java代码,保存到硬盘当中。然后你在命令行中输入[java]view plaincopyjavacYourClassName.java此时,你的java代码就被编译成字节码(.class).如果你是...转载 2020-01-12 09:58:13 · 192 阅读 · 0 评论 -
动态代理是基于什么原理?
java是静态的强类型语言,但是因为提供了反射等机制,也就具备了部分动态类型的语言能。反射机制是java语言提供的一种基础功能,赋予程序在运行时自省的能力。通过反射我们可以直接操作类或者对象动态代理是一种方便运行时动态构建代理、动态处理代理方法调用的机制,很多场景都会用到。rmi、rpc等动态代理主要是让调用者与实现者之间解耦。jdk动态代理和cglib区别jdk 是通过inv...原创 2018-08-06 20:59:32 · 877 阅读 · 0 评论 -
真正理解volatile关键字
volatile的作用1,保证可见性2,保证cpu指令顺序执行上面两个特性就不过多解释了当volatile 修饰 int i 时,为什么不是线程安全呢?如图:由上,我们可以得出以下结论。read和load阶段:从主存复制变量到当前线程工作内存; use和assign阶段:执行代码,改变共享变量值; store和write阶段:用工作内存数据刷新主存对应变量...原创 2018-08-10 11:10:08 · 227 阅读 · 0 评论 -
强引用、软引用、弱引用、幻象引用有什么区别?
不同的引用类型,主要体现的是对象不同的可达性状态和对垃圾收集的影响。强引用:是我们常见的普通对象引用。只要还有强引用指向一个对象,就能表明对象还活着,垃圾回收器不会进行回收。软引用:是一种相对强引用弱化一些的引用,可以让对象豁免一些垃圾收集。只有当jvm认为内存不足时,才会去试图回收软引用指向的对象。jvm会确保在抛出outofmemoryError之前,清理软引用对象。如果还有空闲内存就...原创 2018-08-04 21:19:20 · 239 阅读 · 0 评论 -
Exception和Error的区别?
Exception和Error都是集成了Throwable类。Exception是程序运行中,可以预料的以外情况,可被捕获并能进行相应的处理。Exception可分为checked 和 unchecked,checked必须要进行显示捕获。Error是正常情况下,不大可能出现的情况,绝对部分的的Error都会导致程序 处于非正常,不可回恢复的状态。如outofmemor...原创 2018-08-04 20:45:17 · 196 阅读 · 0 评论 -
sg_aps(jboss7)数据源密码加密解密
package org.picketbox.datasource.security; public class SecureIdentityLoginModule { private static String encode(String secret) { return secret; } private static char[] decode(String secret) { System.out.printl原创 2018-05-31 16:28:20 · 1925 阅读 · 0 评论 -
StringBuilder和Stringbuffer 对比
关于StringBuilder,一般同学只简单记住了,字符串拼接要用StringBuilder,不要用+,也不要用StringBufferStringBuffer 与 StringBuilder在使用中要出 设置初始长度。StringBuffer 与 StringBuilderStringBuffer与StringBuilder都是继承于AbstractSt原创 2016-05-09 00:16:30 · 355 阅读 · 0 评论 -
java中hashcode()和equals()的详解
今天下午研究了半天hashcode()和equals()方法,终于有了一点点的明白,好久没看Java基础,这个有点忘记了,在网上搜了下,这篇写的不错,引入地址是:http://www.javaeye.com/topic/2571911. 首先equals()和hashcode()这两个方法都是从object类中继承过来的。 equals()方法在object类中定义如下: public boolean equals(Object obj) { return (this == obj); } 很明显是对两原创 2010-06-10 21:30:00 · 820 阅读 · 1 评论 -
ArrayList使用toArray()构造数组时的问题
转自:http://www.25175.net/200808/html/2008-08/117.html1. 为了方面按列作外循环,想把ArrayList构造成一个二维数组,如下: ...... ArrayList result=GetResult(); int n=result.size(); String[][] myArray=new String[n][]原创 2009-04-28 20:24:00 · 772 阅读 · 0 评论