Java基础部分
Sky、light rain
让希望做我无声永存的墓志铭
展开
-
java.Lang.LinkageError 错误分析
这不是一个Exception 而是一个Error。API里面是这么写的:Subclasses of LinkageError indicate that a class has some dependency on another class; however, the latter class has incompatibly changed after the compilati...原创 2019-12-05 19:43:51 · 784 阅读 · 0 评论 -
java.lang.NoSuchMethodError
文档上说这是因为你调用了一个不存在的方法,而且一般来说编译器就会帮你发现这个问题。但实际开发过程中,这个问题多数在运行期出现。为什么会有这个问题呢,还是因为在JVM中,程序无法找到被调用的方法。如果你已经引入了相应的包(确定该方法是存在的),那么基本上是由于JVM在加载类时,由于存在限定名相同的类,而导致加载了另一个类。 此时,你可以通过debug来跟踪到运行时调用的类,查看jvm中加载的是哪一个类, 然后调整pom.xml中依赖jar包顺序,将你需要引入的jardependency放到前...原创 2020-08-05 15:28:36 · 203 阅读 · 0 评论 -
log4j将指定类或包输出到一个指定文件
最近项目中用到kafka消息队列,但有个麻烦的问题,就是当kafka宕掉的时候,消费者去取消息就会不断抛警告异常:Connection to node -1 could not be established. Broker may not be available.导致日志文件很大。出现了几次这种情况,所以考虑将kafka异常日志打到一个独立的日志文件中。修改properties配置即可,新增...原创 2018-12-29 17:56:58 · 1096 阅读 · 0 评论 -
Java面试中常见问题
1、基础部分:https://blog.csdn.net/jackfrued/article/details/173393932、简述java中的集合类,并说明hashMap的原理。3、 简述自己对spring的理解;4、有没有遇到过高并发的情况,如何解决?5、写一个冒泡排序算法;6、数据库查询:左连接,内连接、完全连接区别。7、数据库Sql 去重,只保留一条数据。(例:同一个表中由于建表时未设主...原创 2018-07-07 20:31:50 · 191 阅读 · 0 评论 -
java基础部分——集合类概述
1、为什么出现集合类?方便对多个对象的操作,对对象进行存储。2、数组和集合类都是容器,有什么不同?数组可以存储对象,但其长度是固定的; 集合长度是可变的。数组中可以存储基本数据类型,集合只能存储对象。总结来说:集合只用于存储对象,集合长度可变,集合可以存储不同类型的对象。3、集合类的接口是Collection。List和Set都是Collection的子接口。4、对数据的存储方式称为:数据结构。...原创 2018-06-19 23:38:54 · 196 阅读 · 0 评论 -
Java基础部分——关于String类
Java提供了String类来创建操作字符串。 String类的值一旦创建便不能改变,每次更改都会new一个新的String对象。一、常用构造函数:1、String()初始化一个新创建的String对象,使其表示一个空字符序列。2、String(byte[] bytes)通过使用平台的默认字符集解码指定的byte 数组,构造一个新的 String。3、String(byte[] byte...原创 2018-06-16 23:44:47 · 135 阅读 · 0 评论 -
java基础部分——java中值传递与引用传递
先来个概念:1、值传递的时候,将实参的值copy一份给形参,形参相当于一个副本,副本的内容无论怎么修改,都不会影响到原件本身。2、引用传递的时候,将实参的地址copy一份给形参,地址指向同一块内存区域,所以原件本身会被改变。一般情况下,在数据做为参数传递的时候,基本数据类型是值传递,引用数据类型是引用传递(传递地址)。备注一下:String类型传递时比较特殊, 虽然String不是基本数据类型,但...原创 2018-06-15 22:56:38 · 116 阅读 · 0 评论 -
java基础部分——子类继承父类时,程序运行顺序
先来看个例子,看看执行结果是什么:class Father{ private int m = 5; public static int n = 10; public Father(){ System.out.println("父类构造函数fahter"+m); } static { System.out.println("父类静态代码块。。。。。"); } { ...原创 2018-06-13 23:06:14 · 2171 阅读 · 0 评论 -
Java基础部分——List
List是有序的,元素可以重复。常见方法:增:add();删:remove();改:set(index, element); 第一个参数为下标,第二个参数是要替换成的元素。 即将将index下标位置元素替换为第二个参数内容。查:get(index); Iterator()迭代, ListIterator();Iterator与ListIterator区别:都可以在迭代时对List进行操作,...原创 2018-06-20 23:04:55 · 102 阅读 · 0 评论 -
Java基础部分 — Java的特性
谈到Java,大家都知道是一种面向对象的编程语言, 1、那他与面向过程语言有什么区别呢?面向过程:分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,依次调用。面向对象:把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。举个例子:大象放入冰箱, 面向过程的步骤是:1、冰箱打开,2,把大象放入冰箱,3,关闭冰箱。而使用面向对...原创 2018-06-12 22:40:00 · 126 阅读 · 0 评论 -
JavaIO输入输出流
1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中。其中,所有输入流类都是抽象类InputStream(字节输入流),或者抽象类Reader(字符输入流)的子类;而所有输出流都是抽象类OutputStream(字节输出流)或者Writer(字符输出流)的子类。流是干什么的???(为了永久性的保存数据) 根据数据流向的不同分为输入流和输出流; 根据处理数...转载 2018-02-28 11:53:52 · 151 阅读 · 0 评论