
Java编程及开发
文章平均质量分 66
Ethan_pika
一个爱养花的程序员
展开
-
Java类静态方法的mock实现
Mockito 3.4.0mock常见静态方法待测试类:package com.taobao.vip.shop.biz.sqyk.manager;import com.taobao.vip.shop.biz.sqyk.util.TairUtil;/** * Created by yitian.zyt on 2021/6/30 */@Slf4j@Componentpublic class SqykChannelBenefitManager { public static原创 2022-02-02 23:53:38 · 11765 阅读 · 0 评论 -
Lombok@Accessors实验注解
@AccessorsAccessor的中文含义是存取器,@Accessors用于配置getter和setter方法的生成结果,下面介绍三个属性。fluentfluent的中文含义是流畅的,设置为true,则getter和setter方法的方法名都是基础属性名,且setter方法返回当前对象。如下:@Data@Accessors(fluent = true)public class User { private Long id; private String name;原创 2021-05-06 17:24:30 · 506 阅读 · 0 评论 -
Mockito核心源码分析总结
Mockito核心源码分析总结Mockito使用示例在开始看mockito的源码之前,首先看一下下面两个mockito的使用示例。简单使用示例 @Test public void mockitoTest(){ // 1.生成一个mock对象 List<String> mockedList = Mockito.mock(List.class); // 查看mock对象的类名: $java.util.List$$Enha原创 2021-02-28 15:01:36 · 1623 阅读 · 0 评论 -
Java 8使用Stream API进行集合处理实例(Lambda表达式)
Stream API简介官方对Stream API给出的定义:A sequence of elemets supporting sequential and parallel aggregate operations。所以Java 8中引入的Stream API是一个用来处理数组和集合的API。该API具有如下的一些特性:Stream API不是数据结构,没有相关的内存存储。 不支持索...原创 2020-03-06 15:07:03 · 1844 阅读 · 0 评论 -
Java 8 Lambda表达式和Stream API详细教程和使用实例
Lambda表达式介绍Lambda表达式是Java 8中新增的新功能之一,使用lambda表达式可以替代只有一个抽象函数的函数式接口的实现,告别匿名内部类并使代码简单易懂。同时配合Stream API,可以提升对集合的迭代、遍历过滤等操作的并行性和便捷性。Lambda表达式的官方文档可见:https://docs.oracle.com/javase/tutorial/java/javaOO/l...原创 2020-03-06 15:07:00 · 2390 阅读 · 1 评论 -
Mac中IntelliJ IDEA 2019.1注册过程记录
Mac中IDEA 2019.1注册过程记录在网上搜索相应的破解文件,并将其存放在如下路径:Documents/IDEAWorkspaces/JetbrainsCrack/jetbrainsCrack.jar。打开IDEA中的如下VM Options选项:在打开的内容中,加入如下的配置:-javaagent:/Users/yitian/Documents/IDEAWork...原创 2020-02-12 19:32:14 · 5859 阅读 · 1 评论 -
IntelliJ IDEA离线安装Lombok插件
为什么使用离线安装最近在自己个人电脑使用Lombok插件,但发现plugin market总是刷不出来,因此暂时无法通过idea的插件市场直接安装:这可能是网络的原因,如果你的plugins marketplace可以正常打开并找到lombok plugin则可以直接安装。否则需要进行如下的步骤。下载安装Lombok插件1. 插件下载地址:https://plugins.je...原创 2020-02-01 15:38:48 · 7266 阅读 · 0 评论 -
String/StringBuffer/StringBuilder字符串拼接简析
String类型的拼接 String str="爱我还是他";str.concat("我已看不到我们的好"); System.out.println(str); //"爱我还是他"String的concat方法只会返回拼接括号内数据后的字符串,但是这个String类型的本身并不受影响。String str="爱我还是他";str=str+",我已看不到我们的好";...原创 2019-11-14 18:01:22 · 253 阅读 · 0 评论 -
Java 程序死锁问题原理及解决方案
内容简介本文首先介绍了死锁发生的原因,并通过一个示例解释了死锁发生的前提情况。然后通过 JVM 的 jstack 工具演示了如何确定一个死锁的发生。最后对死锁的预防、恢复等方式进行了解释。参考文章链接:https://www.ibm.com/developerworks/cn/java/j-lo-deadlock/Java 语言通过 synchronized 关键字来保证原子性,这是...原创 2019-11-14 17:57:01 · 488 阅读 · 0 评论 -
Java Socket编程示例与解析
网络编程中两个主要的问题一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输。在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的一台主机。而TCP层则提供面向应用的可靠(tcp)的或非可靠(UDP)的数据传输机制,这是网络编程的主要对象,一般不需要关心IP层是如何处理数据的。目前较为流行的网络编...原创 2019-11-14 17:49:47 · 4252 阅读 · 0 评论 -
Java反射机制的简析与使用
第一章 Class类的使用文章基本目录:– Class类的使用 – 方法的反射 – 成员变量的反射 – 构造函数的反射 – Java类加载机制Class类的使用1. 在面向对象的世界里,万事万物皆对象。java语言中,静态的成员,普通数据类型类是不是对象呢?(java中,静态成员,和普通数据类型不是对象)。类是谁的对象呢?(类是对象,类是java.lang.Class类的对象...原创 2019-11-14 17:45:23 · 149 阅读 · 0 评论 -
Ubuntu16.04 .class反编译工具JD-GUI
下载下载地址:http://jd.benow.ca/安装yitian@heron01:~$ sudo dpkg -i jd-gui_1.4.0-0_all.deb [sudo] password for yitian: Selecting previously unselected package jd-gui.(Reading database … 263950 files ...原创 2019-11-10 11:11:24 · 1122 阅读 · 0 评论 -
Window10 配置Java环境变量
JDK安装完成后,在系统环境变量中配置如下环境变量:新建->变量名"JAVA_HOME",变量值"C:\Program Files\Java\jdk1.8.0_161"(即JDK的安装路径) 编辑->变量名"Path",在原变量值的最后面加上“;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin” 新建->变量名“CLASSPATH”,变量值“.;...原创 2019-05-15 16:29:22 · 283 阅读 · 0 评论 -
Java基础知识(面向对象技术)
说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。1. 面向对象和面向过程有什么区别?2. 面向对象有哪些特征?主要特征包含抽象,继承,封装,多态:抽象:3. 面向对象的开发方式有什么优点?较高的开发效率。由于面向对象的思想比较符合人类的思维过程,这种思想可以帮助开发人员刚好的理解软件的功能需求,并有一系列的相关工具帮助开发,因此可以提高开发效率。 软...原创 2019-03-09 12:16:52 · 325 阅读 · 1 评论 -
Java基础知识(关键字)
说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。1. 变量命名有哪些规则?只能有字母、数字、下划线和$组成,且必须由字母,下划线或$开头,不能是数字。2. break,continue,return有什么区别??break用于直接跳出当前循环,不在执行剩余代码,如果实在内层循环中进行,则是跳出内层循环代码,不影响外层循环。 continue用于停止当次循环,...原创 2019-03-09 13:16:22 · 232 阅读 · 0 评论 -
Java基础知识(基本类型与运算)
说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。1. Java提供了哪些基本数据类型?8中基本数据类型:Java同时提供了这些基本类型的封装类(Character,Boolean,Byte,Short,Integer,Long,Float,Double),基本数据类型是值传递的,引用数据类型是引用传递的。2. 什么是不可变类?不可变类是指创建了这个类的...原创 2019-03-09 16:09:11 · 547 阅读 · 1 评论 -
Java基础知识(字符串和数组)
说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。1. 字符串创建于存储的机制是什么?(1)对于String s1 = new String("abc"); 和String s2 = new String("abc");语句,存在两个引用对象s1和s2,两个内容相同的字符串对象“abc”,他们在内存中的地址是不同的,只要用new总会产生新的对象。(2)对于Stri...原创 2019-03-09 17:22:43 · 276 阅读 · 0 评论 -
Java基础知识(异常处理)
说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。1. finally块中的代码什么时候被执行?Java的异常处理中,finally块的作用就是保证无论出现什么情况,finally块中的代码都会被执行。所以无论在try或catch中return,finally中的代码会在return之前执行。如果finally中有return语句,则会覆盖上面所有的return语句。...原创 2019-03-09 20:41:45 · 249 阅读 · 0 评论 -
Java基础知识(输入输出流)
说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。1. Java IO流的实现机制是什么?Java中,输入和输出都被称为抽象的流,流可以被看做一组有序的字节集合,即数据在两个设备之间的传输。流的本质是数组传输,根据处理数据类型的不同,流可以分为两类:字节流和字符流。字字节流以字节(8bit)为单位,包含两个抽象类InputStream和OutputStream。...原创 2019-03-09 21:54:08 · 829 阅读 · 0 评论 -
Java基础知识(容器)
说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。(P133)1. Java Collections框架是什么?Java collection框架中提供了List,Queue,Set,Stack和Map等数据结构。其中List,Queue,Set和Stack都继承Collection接口。Set表示数学意义上的集合。主要特点为元素不能重复,因此存入Set的每个...原创 2019-03-10 11:32:43 · 253 阅读 · 0 评论 -
Java基础知识(多线程)
说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。(P143)1. 什么是线程?他和进程有什么区别?为什么使用多线程?进程是程序运行和资源分配的基本单位,线程是CPU调度和分配的基本单位,它是程序执行的最小单元。一个程序至少有一个进程,一个进程至少有一个线程。进程在执行过程中拥有独立的内存单元(代码段,数据段和堆空间),而在一个进程中运行的多个线程并发运行,共享这些内...原创 2019-03-10 17:27:51 · 552 阅读 · 0 评论 -
Java基础知识(基本概念)
Java基础知识说明:其中内容摘自:《Java程序员面试宝典》,这里仅供学习使用。1. Java语言有什么优点:Java为纯面向对象的语言(Thinking in Java:Everything is Object!) 平台无关。Java为解释性语言,Java代码通过编译器变成中间代码,在JVM中进行解释运行。 提供了众多的内置类库,方便开发。 提供了对Web应用和大数据处理...原创 2019-03-08 23:39:43 · 742 阅读 · 0 评论