Java
文章平均质量分 72
dela_
这个作者很懒,什么都没留下…
展开
-
C++和Java的浅层拷贝与深层拷贝
今天上课学到了C++的浅层拷贝与深层拷贝, 于是在这里将C++和Java关于浅层拷贝与深层拷贝做一个对比.一.C++的浅层拷贝与深层拷贝先来了解一下C++中的复制构造函数://假设有这样一个TEST类:class TEST{ private: int *num; public: TEST(int n) {原创 2017-05-24 23:07:26 · 1162 阅读 · 2 评论 -
日志埋点 --- log4j的配置及使用
本文的运行环境为:IDEA + Maven,有关Maven框架的使用可自行百度。1. 导入log4j包在项目的pom.xml的<dependencies>标签下添加如下代码,然后等待Maven将log4j的包下载完成。 <!-- https://mvnrepository.com/artifact/log4j/log4j --> <dependency&gt...原创 2019-03-11 10:37:14 · 3919 阅读 · 0 评论 -
Java --- Java中的线程池
Java中,想要创建一个线程池有两种方式,分别是使用Executors的工厂方法创建和直接使用ThreadPoolExecutor去创建一个线程池。在阿里巴巴开发手册中有讲,在有多线程开发的需求时,强制使用线程池,避免因为“过度切换”而引起的资源耗尽问题,并且创建线程池时需通过ThreadPoolExecutor的方式去创建。原文如下:【强制】线程资源必须通过线程池提供,不允许在应用中自行显...原创 2018-11-26 12:05:26 · 348 阅读 · 1 评论 -
bug笔记 - mybatis --- nested exception is org.apache.ibatis.builder.IncompleteElementException
前几天在使用mybatis框架自定义mapper的时候报了这个错,现在把这个原因记录一下。bug原因:自定义mapper用来返回表的主键ID这一列,我的mapper文件内容如下:<select id="selectId" parameterType="com.service.dao.TestQuery" resultMa原创 2018-11-16 18:29:10 · 6027 阅读 · 1 评论 -
Java8 --- 函数式接口@FunctionalInterface及default关键字
最近在开发的过程中有一个点让我比较感兴趣,就是使用Lambda表达式的方式来实现Comparator接口。1. 关于Comparator和Comparable既然提到了Comparator,那就大致来说一下Comparator和Comparable接口的区别。Comparator是一种策略模式,即被比较的对象自身不需要做任何改变(实现任何排序接口),而是通过实例化一个Comparator策...原创 2018-11-06 21:33:23 · 2380 阅读 · 0 评论 -
Maven依赖冲突的解决
在使用IDEA开发比较大的Spring web项目的时候,常常会在pom文件中导入大量依赖,所以就有可能造成Maven的依赖冲突。下面来看一下如何解决Maven的依赖冲突。1. 先清当前的jar包的缓存:IDEA的 File选项 -> invalidate caches/restart2. 打印Maven的依赖树:mvn dependency:tree(建议将内容重定向到一个fi...原创 2018-10-25 20:51:53 · 1639 阅读 · 0 评论 -
bug笔记 - Java --- 网络编程使用BufferedInputStream从缓冲区中读不到数据(浅析BufferedInputStram和BufferedOutputStream的工作机制)
本文主要是从我写Java网络编程时使用BufferedInputStream和BufferedOutputStream的时候遇到的bug, 来分析BufferedInputStream和BufferedOutputStream的工作机制和简单的源码分析.1. bug描述最近在写一个Java网络编程的程序, 其中涉及文件的传输问题, 选择使用BufferedInputStream和Buf原创 2018-02-01 12:30:34 · 1714 阅读 · 2 评论 -
设计模式 --- 观察者模式
观察者模式是JDK中使用最多的设计模式之一. 在学习观察者模式之前, 我在网上也找了很多博客, 这些博客都是的讲解都是基于 head first 设计模式 这本书的. 如果看书的话, 很简单就能学会这个设计模式, 但是将书上的内容些成博客, 其实是不太容易理解的. 所以在这篇博客中, 我将用我自己的方式以示例的方式来讲解这个设计模式.1. 观察者模式是什么? 它解决了什么问题?原创 2018-02-05 00:30:20 · 453 阅读 · 1 评论 -
Java学习笔记 --- ArrayList的动态扩容
今天Java上机的时候有一道题是这样的: 本题目要求定义一个长度可变的整型数组IntArray,数组初始长度为5,当输入的数组元素个数超过数组长度时,数组就自动增加5个元素的容量,即数组长度增加5。也就是说实现一个类似于ArrayList的自动扩容int型的数组. 既然类似于ArrayList, 那不妨来看看ArrayList是如何动态扩容的. ArrayList是集合类List基于数组的一个实现,原创 2017-11-29 23:02:56 · 1048 阅读 · 3 评论 -
Java学习笔记 --- Java中的参数传递问题
前言这学期学校开了Java, 所以服务器组的小伙伴们都开心地写起了Java. 昨天晚上萌萌哒的校园问了我一个问题, 在C语言中参数的传递中, 我们可以使用指针进行传递, 从而更改参数的值, 可是在Java中, 并没有取地址操作, 也没有C++里面的引用操作, 那么应该怎样更改参数的值呢?所以在这里来谈一谈我对Java中的参数传递的一些粗浅的认识.1. Java中的数据类型?在说到Java参数传递问题原创 2017-09-24 10:46:56 · 2738 阅读 · 3 评论 -
Java学习笔记 --- 反射机制
做完了第一版的图书管理系统, 决定这段时间静下心好好看一看书, 一边复习Java基础和Servlet&JSP, 再一边学一学框架, 写读书笔记将学习到的知识点记录下来.反射是什么? 反射,一种计算机处理方式。是程序可以访问、检测和修改它本身状态或行为的一种能力。这是百度里给出的概念, 可能大多数人跟我刚开始一样, 不是很理解这句话. 那么我们先从Java文件编译链接后生的可执行文件说起吧.首先原创 2017-08-03 23:44:44 · 563 阅读 · 1 评论 -
Java学习笔记 --- Java中常用的包及其重要的类简要概括
今天康康问了我一个问题, 问我在Java中有没有像C里面stdio.h, C++里面iostream这样的标准类库, 当然是有的, Java里面的标准类都被封装在一个个包里面, 今天就来简要概括一下Java里面常用的包.问: Java里面有没有不用improt导入就能使用的包?还真有一个包, 不用导入就能使用里面的类和方法. 比如在main()函数里面只写一句System.out.println(“原创 2017-06-06 20:52:20 · 1004 阅读 · 0 评论 -
bug笔记 - Error:java: Compilation failed: internal java compiler error
报这个错是因为Project中的JDK版本没有设置对。一般情况下,是因为以下三个地方(稍后上图)没有设置对,但是在我都设置为了统一的版本之后,还是报错,后来终于找到了原因:因为pom文件里面的版本号不对,与工程的版本不一致,导致报错。 具体解决方案如下:1. 首先是三个常规校验版本号的地方如果检查上面三个地方都没有问题的话,再检查一下你的pom.xml文件,看看pom文件的版本号是否与上...原创 2019-03-18 12:27:46 · 393 阅读 · 0 评论