随笔分类 - Java
1
学习Java,后端开发Spring相关
摘要:最开始只是拿来用,后来调试研究了一下。 解释:2 传递的是对象,对象中包含 keySet 变量,每次调用都是这个对象里面的 keySet 变量。 而 1 每次都是创建了一个新的对象,keySet 自然不同,也就不能实现过滤了 ```java import java.util.concurrent.C
阅读全文
摘要:参见Spring Boot 默认 logback.xml 配置文件的寻找和提取 文件地址 base.xml defaults.xml console-appender.xml file-appender.xml
阅读全文
摘要:Java遍历文件夹 简单写了一个打印目录下所有文件以及文件夹的代码,类比于树的遍历,写了深度优先和广度优先的遍历。并且还写了个JDK1.7接口提供的的版本。 深度广度遍历都用到的双端队列(ArrayDeque),不了解双端队列的话可以去学习一下。我简单说一下,双端队列既可以用作队列,也可以用作栈,而
阅读全文
摘要:/** * 指定路径下,自动生成 maven pom.xml 文件的 dependency 配置 */ File libPath = new File("D:\\IdeaProjects\\oaService\\src\\main\\resources\\lib"); // System.out.p
阅读全文
摘要:/** * 集合中的remove方法存在问题,尤其是在循环中移除元素时,会导致“跳过”元素。 */ Integer[] array = new Integer[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; List<Integer> list = new ArrayList<>(
阅读全文
摘要:来源于 Spring基础(2):放弃XML,走向注解 xml配置 至此,我们把XML配置下2种注入方式都实验过了,它们的区别是: XML配置<property> + 对象提供对应的setter方法 XML配置<constructor-arg> + 对象提供对应的构造方法 改变XML配置的同时,需要对
阅读全文
摘要:父类没有实现Serializable接口时,没有无参的构造方法,类实现了Serializable接口,这时是可以将子类序列化,但反序列化是会报错的。 但如果父类有无参的构造方法,这时反序列化可以成功,且父类的成员变量的值为默认值,即便是子类实例化时赋值了。 当父类实现Serializable接口,此
阅读全文
摘要:使用System.setOut(PrintStream流);影响范围是设定后的区域,设定后的区域即便是其他类中的方法也会重定向。 1 package setout; 2 3 public class OtherDemo { 4 public static void meth(){ 5 System.
阅读全文
摘要:JDK还是安装1.8的好,不然这版本问题很致命
阅读全文
摘要:对于Java中Collection集合来说,在输出时调用其实是不必要的,只是在某些特殊的情况下除外。 对于Buffered输出流来说,关闭时会自动调用flush方法将缓冲区中的数据写入目的地。大部分情况下并不需要手动调用flush方法,尤其是边读边写,写入目的地时在调用flush方法,这样缓冲区的存
阅读全文
摘要:并发与并行的区别是什么? Erlang 之父 Joe Armstrong 解释并发与并行的区别: 并发:两个队列交替使用一台咖啡机 并行:两个队列分别使用(同时)两个咖啡机 怎样理解阻塞非阻塞与同步异步的区别? 1.同步与异步同步和异步关注的是消息通信机制 (synchronous communic
阅读全文
摘要:Java 实例 - 获取所有线程 Daemon线程——在所有的非Daemon线程结束后JVM会停止。利用Daemon线程的特性,不停输出目前运行的线程,然后判断主线程与子线程的关系。 似乎主线程结束后,子线程还在继续的样子,但我并不能确定。 附上代码 1 public class ThreadDem
阅读全文
摘要:BufferedWriter bos = new BufferedWriter(new FileWriter("D:\\test.txt")) 读取文档时,使用的是BufferedReader的readLine()方法,此时读到的字符串是没有换行符的,使用BufferedWriter的write()
阅读全文
摘要:本来写过一次的,后来被我连同反编译后的文件一块删了,就重写了一次 内部类除非是外部类的静态内部类,其他的内部类都不能定义静态变量以及静态方法,但是静态常量还是可以定义的。 对于静态内部类来说,他的实例化不依赖于外部类的实例,实例化时没有一个指向外部类实例的参考,因此是无法使用this关键字的,可以使
阅读全文
摘要:在方法内部定义的内部类前面不能有访问类型修饰符,就好像方法中定义的局部变量一样,但这种内部类的前面可以使用final或abstract修饰符。这种内部类对其他类是不可见的其他类无法引用这种内部类,但是这种内部类创建的实例对象可以传递给其他类访问。这种内部类必须是先定义,后使用,即内部类的定义代码必须
阅读全文
摘要:刚刚想到如果静态内部类继承了父类,那岂不是可以无限套娃了,然后就动手试了一下 public class InsideClass { class $InsideClass extends InsideClass { } public static void main(String[] args) {
阅读全文
摘要:在创建一个对象时,会调用构造方法外还会执行其他区块的语句,例如静态块、构造块。 执行顺序——静态块 -- main() -- 构造块 -- 构造方法 静态块在类加载时执行一次,之后便不再执行。可以在对类进行初始化,也可以实例化对象调用方法。但不能使用this、super等关键词,因为此时并没有实例化
阅读全文
摘要:对象的创建 对象在创建时,会调用该类的构造方法,如果不显示地写出,则Java会提供一个隐式构造方法。如果显示的定义了,将不再提供隐式构造方法。 子类中未显示调用父类的构造方法时,Java会隐式调用父类的无参构造方法。 注意:当父类定义了带参数的构造方法并且未定义无参的构造方法时,子类会自动定义一个构
阅读全文
摘要:CLASSPATH之于JVM,近似相当于PATH之于Windows path告诉Windows .exe可执行文件去哪里找。而classpath告诉JVM .class可执行文件(名称不需要打上.class 输入了反而会报错)去哪里找,JVM默认会在当前文件夹下查找.class文件。其实我个人觉得,
阅读全文
1