随笔分类 -  Java 基础知识

摘要:一、概念 jar包:JAR包是类的归档文件,JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM 这样的工具直接使用。 war包:war包是JavaWeb程序打的包,war包里面包 阅读全文
posted @ 2022-09-26 16:08 aspirant 阅读(1381) 评论(0) 推荐(0)
摘要:接口:在JDK7.0之前只能有抽象方法,8.0新增了静态方法和默认方法。9.0又新增了私有方法。所以接口不能被继承只能被实现。一个类可以实现一个或多个接口,如果类实现接口(可能是多个)其中有部分抽象方法(哪怕只有1个)没有被实现,则这个类只能是抽象类,如果你希望定义一个实体类,则必须实现所有抽象方法 阅读全文
posted @ 2022-04-12 14:53 aspirant 阅读(444) 评论(0) 推荐(0)
摘要:双引号和单引号的区别? int index = fileName.lastIndexOf('.') 和int index = fileName.lastIndexOf(".") 效果一样,为什么? 单引号引的数据 是char类型的双引号引的数据 是String类型的单引号只能引一个字符而双引号可以引 阅读全文
posted @ 2022-02-15 10:31 aspirant 阅读(220) 评论(0) 推荐(0)
摘要:在自动化测试中,除了普通的值验证,经常还有一些图片验证,比如图片的匹配率,输出图片的差异图片等。本文主要用到了BufferedImage类来操作图片比对和输出差异图片,大体的思路如下: 1. 通过ImageIO读入图片,生成相应的BufferedImage实例(Image操作流) 2. 修改目标图片 阅读全文
posted @ 2022-02-10 14:30 aspirant 阅读(580) 评论(0) 推荐(0)
摘要:位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面详细介绍每个位运算符。 1.与运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中位都为1, 阅读全文
posted @ 2021-07-19 20:22 aspirant 阅读(800) 评论(0) 推荐(0)
摘要:需求是这样的,我希望使用一个字段来标记多个boolean属性, 不能使用json的形式,因为使用opensearch 不能通过json解析,但是可以使用位操作运算符号, 如果不熟悉位运算符号参考:Java的位运算符详解实例——与(&)、非(~)、或(|)、异或(^) 网上参考了很多,发现 明明是个小 阅读全文
posted @ 2021-07-19 16:16 aspirant 阅读(392) 评论(0) 推荐(0)
摘要:不管存不存在key,都设值:1. putput返回旧值,如果没有则返回null @Test public void testMap() { Map<String, String> map = new HashMap<>(); map.put("a","A"); map.put("b","B"); S 阅读全文
posted @ 2021-03-17 21:23 aspirant 阅读(3619) 评论(0) 推荐(2)
摘要:(1)在使用Arrays.asList转成的List时同样要注意,Arrays.asList返回类型为Arrays类内部定义的私有类ArrayList,并且继承与AbstractList,翻阅AbstractList源码是可以发现,是不支持add和remove操作的,也就是说Arrays.asLis 阅读全文
posted @ 2020-10-30 15:59 aspirant 阅读(2421) 评论(0) 推荐(0)
摘要:#与0的区别: #:没有则为空 0:没有则补0 final DecimalFormat df = new DecimalFormat("0.##"); final String str1 = df.format(a); final DecimalFormat df = new DecimalForm 阅读全文
posted @ 2020-03-23 11:20 aspirant 阅读(4216) 评论(0) 推荐(0)
摘要:比如: //先把double==>string==>BigDecimal;直接 double==>BigDecimal 异常比如9.9BigDecimal decimalRate = new BigDecimal(String.valueOf(lowestDiscountRate)).setScal 阅读全文
posted @ 2020-03-12 11:32 aspirant 阅读(774) 评论(0) 推荐(0)
摘要:1.List转JSONArray List<T> list = new ArrayList<T>(); JSONArray array= JSONArray.parseArray(JSON.toJSONString(list)); 2.JSONArray转List JSONArray array = 阅读全文
posted @ 2020-03-11 15:31 aspirant 阅读(4090) 评论(0) 推荐(0)
摘要:(1) 如果提交的话,加上commons 别不加 (1)如果有try catch finally; 如果有返回值的话,不要放在finally中; 阅读全文
posted @ 2019-11-07 15:30 aspirant 阅读(244) 评论(0) 推荐(0)
摘要:在java中存在一些转义字符,比如"\n"为换行符,但是也有一些JDK自带的一些操作符 比如 : System.getProperty("line.separator") 这也是换行符,功能和"\n"是一致的,但是此种写法屏蔽了 Windows和Linux的区别 ,更保险一些. 学无止境呀! 参考: 阅读全文
posted @ 2019-09-30 17:27 aspirant 阅读(2592) 评论(0) 推荐(0)
摘要:概述 泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。 什么是泛型?为什么要使用泛型? 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变 阅读全文
posted @ 2019-09-19 21:12 aspirant 阅读(1277) 评论(0) 推荐(0)
摘要:在项目中使用到了ObjectMapper,故研究了一下。现将自己的几个测试用例和大家分享一下~ 首先在pom.xml文件中,加入依赖: 创建一个实体类XwjUser: 先创建一个ObjectMapper,然后赋值一些属性: 1、对象与json字符串、byte数组 运行结果: 注意,对象转json字符 阅读全文
posted @ 2019-09-04 14:53 aspirant 阅读(3275) 评论(0) 推荐(0)
摘要:含义 ENCTYPE="multipart/form-data" 说明: 通过 http 协议上传文件 rfc1867协议概述,客户端发送内容构造。 概述 在最初的 http 协议中,没有上传文件方面的功能。 rfc1867为 http 协议添加了这个功能。客户端的浏览器,如 Microsoft I 阅读全文
posted @ 2019-07-24 20:01 aspirant 阅读(33713) 评论(0) 推荐(1)
摘要:1、顶层是throwable 然后是 error 和 exception; error 就是 虚拟机异常 VirtualMachineError;比如典型的 outofMemoryError, stackOverFlowError(滴滴面试); exception 两部分 1、编译时异常,2、运行时 阅读全文
posted @ 2019-04-29 15:49 aspirant 阅读(10553) 评论(3) 推荐(2)
摘要:三大特征是:封装、继承和多态。 1.封装:根据职责将属性和方法封装到一个抽象的类中 2.继承:实现代码的重用,相同的代码不需要重复的写 3.多态:(以封装和继承为前提),不同的子类对象调用相同的方法,产生不同的执行结果 封装是指将某事物的属性和行为包装到对象中,这个对象只对外公布需要公开的属性和行为 阅读全文
posted @ 2019-04-24 14:57 aspirant 阅读(924) 评论(0) 推荐(0)
摘要:系统中用到了ServiceLoader,查了一下: ServiceLoader与ClassLoader是Java中2个即相互区别又相互联系的加载器.JVM利用ClassLoader将类载入内存,这是一个类声明周期的第一步(一个java类的完整的生命周期会经历加载、连接、初始化、使用、和卸载五个阶段, 阅读全文
posted @ 2019-03-28 17:58 aspirant 阅读(26939) 评论(0) 推荐(2)
摘要:fastjson简介 Fastjson是一个Java语言编写的高性能功能完善的JSON库。它采用一种“假定有序快速匹配”的算法,把JSON Parse的性能提升到极致,是目前Java语言中最快的JSON库。Fastjson接口简单易用,已经被广泛使用在缓存序列化、协议交互、Web输出、Android 阅读全文
posted @ 2019-03-28 14:24 aspirant 阅读(6538) 评论(0) 推荐(0)