Java
笑笑师弟
生途有界,学海无涯
展开
-
判断基本数据类型
今天在玩的时候突然想到去判断一个基本数据类型,因为不是引用类型,所以不能直接利用方法去判断,然后就想到了利用对应的包装类去判断。就当写个小工具玩玩咯。public class MyUtil { public static String getBaseType(Object o) { String s = o.getClass().getSimpleName().toL...原创 2019-05-03 18:42:06 · 1002 阅读 · 0 评论 -
基本数据类型与引用类型的区别
基本数据类型:char,boolean,byte,short,int,long,float,double引用类型:数组,接口,类存储原理:(1) 基本数据类型的存储原理:所有的简单数据类型不存在“引用”的概念,基本数据类型都是直接存储在内存中的内存栈上的,数据本身的值就是存储在栈空间里面。Java语言八种数据类型都是这种存储模型;(2) 引用类型的存储原理:引用类型继承于...原创 2019-05-05 08:38:39 · 494 阅读 · 0 评论 -
Java排序算法
1、冒泡排序 public static void sort(int[] arr) { int temp = 0; for (int i = 0; i < arr.length; i++) { for (int j = i + 1; j < arr.length; j++) { if (arr[i] > arr[j]) { temp = ar...原创 2019-03-07 15:20:12 · 127 阅读 · 0 评论 -
实现邮件发送验证码
1、包①maven项目下pom依赖:<dependency> <groupId>com.sun.mail</groupId> <artifactId>javax.mail</artifactId> <version>1.6.0</version></dependen原创 2019-01-26 10:31:27 · 1302 阅读 · 0 评论 -
常用正则表达式
正则表达式资料数字:^[0-9]*$n位的数字:^\d{n}$至少n位的数字:^\d{n,}$m-n位的数字:^\d{m,n}$零和非零开头的数字:^(0|[1-9][0-9]*)$非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$正数、负数、和小数:^(\-|\+)...原创 2018-11-28 13:11:48 · 118 阅读 · 0 评论 -
InetAddress类
java.net包中的InetAddress类用于封装IP地址DNS。要创建InetAddress的实例,可以使用工厂方法,因为此类没有可用的的构造方法。方法 说明 static InetAddress getLocalHost() 返回本地主机InetAddress对象 static InetAddress getByName(String hostName) 为主...原创 2018-09-06 22:52:28 · 762 阅读 · 0 评论 -
DOM4J解析
1、DOM4J概述DOM4J是一个易用的、开源的库,用于XML XPath和XSLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP。DOM4J使用起来非常简单。只要了解基本的XML-DOM模型就能使用。DOM4J最大的特色是使用大量的接口,目前对DOM4J的使用越来越广泛。DOM4J的主要接口都在org.dom4j这个包里面:→Attribute:定义了...原创 2018-09-12 07:43:52 · 262 阅读 · 0 评论 -
XML
1.xml基础1.1 什么是xml XML是指可扩展标记语言(eXtensible Markup Language),它也是一种标记语言,很类似HTML。它被设计的宗旨是传输数据,而非显示数据。(纯文本、跨平台、可读性强(相对json)) XML标签没有被预定义,需要用户自行定义标签。 XML技术是W3C组织(World Wide Web Consortium万维网联盟)发...原创 2018-09-10 01:03:21 · 290 阅读 · 0 评论 -
网络编程
1. 网络通信协议1.1 协议和七层模型 要使计算机连成的网络能够互通信息,需要对数据传输速率、传输代码、代码结构、传输控制步骤、出错控制等制定一组标准,这一组共同遵守的通信标准就是网络通信协议,不同的计算机之间必须使用相同的通讯协议才能进行通信。 七层模型,也称为OSI(Open System Interconnection)参考模型,是国际标准化组织(ISO)制定的一个用于计...原创 2018-09-10 00:56:59 · 99 阅读 · 0 评论 -
多线程3
1. 线程阻塞同步阻塞 调用sleep(),join()方法的时候,sleep()转为休眠,时间到自动唤醒 wait(),notify()方法配套,转为等待,同时释放资源,通过notify()方法唤醒 yield(),释放资源,与其他线程重新抢占资源,抢到就执行 suspend()和resume(),由jdk1.0提供,jdk1.2之后就被放弃了,它也是让线程暂停,但...原创 2018-09-10 00:47:57 · 115 阅读 · 0 评论 -
序列化与反序列化
1、序列化概述在开发中,经常需要将对象的信息保存到磁盘中,便于以后检索。序列化提供了轻松实现这个目标的快捷方法。简单的说,序列化就是将对象的状态存储到特定存储介质的过程,也就是将对象状态转换为可保存或传输格式的过程。在序列化过程中,会将对象的公有成员,私有成员包括类名,转换为字节流,然后再把字节流写入数据流,存储到存储介质中,这里说的存储介质通常指的是文件。使用序列化的意义在于将Jav...原创 2018-08-29 12:06:15 · 227 阅读 · 0 评论 -
反射应用
链接:反射概述1、获取类的信息 1.1、获取Class对象 a、调用对象的getClass()方法;Student stu=new Student();Class clazz=stu.getClass(); b、调用类的class属性;Class clazz=String.class; c、使用Class类的forName()方法...原创 2018-08-29 13:07:53 · 295 阅读 · 0 评论 -
反射概述
链接:反射应用Java的反射机制是Java特性之一,反射机制是构建框架技术的基础所在。Java反射机制是指在运行状态中,动态获取信息以及动态调用对象方法的功能。Java反射有三个动态性质:→ 运行时生成对象实例。→ 运行期间调用方法。→ 运行时更改属性。下图为Java程序执行过程:Java反射机制在编译时并不确定是哪个类被加载了,而是在程序运行的时候才加载,探知...原创 2018-08-29 20:52:58 · 526 阅读 · 0 评论 -
Iterator
Iterator接口表示对集合进行迭代的迭代器:Iterator接口为集合而生,专门实现集合的遍历。主要方法:boolean hasNext() 判断是否存在可访问的下一个元素,如果有元素可以迭代,则返回TRUE E next() 返回可访问的下一个元素 void remove() 从迭代器指向的 collection 中移除迭代器返回的最后一个...原创 2018-09-01 09:24:48 · 510 阅读 · 0 评论 -
内存流——ByteArrayInputStream、ByteArrayOutputStream、CharArrayInputStream、CharArrayInputStream
ByteArrayInputStream、ByteArrayOutputStreamCharArrayInputStream、CharArrayInputStreamByteArrayInputStream 包含一个内部缓冲区,该缓冲区包含从流中读取的字节。内部计数器跟踪 read 方法要提供的下一个字节。关闭 ByteArrayInputStream 无效。此类中的方法在关闭...原创 2018-08-28 20:57:51 · 486 阅读 · 0 评论 -
实用类
1、Java API 介绍Java API (Java Application Programming Interface)即Java应用程序编程接口,它是运行库的集合,预先定义了一些接口和类,程序员可以直接使用这些已经被打包的接口和类来做具体的应用,节约了程序员大量的时间和精力。API 除了有“应用程序编程接口”的意思外,还特指API 的说明文档,也称帮助文档。Java语言的强大之处在...原创 2018-09-04 20:43:05 · 115 阅读 · 0 评论 -
网络编程技术
1、Socket简介①Socket概述②Socket通信原理③java.net包2、基于TCP协议的Socket编程java.net包的两个类Socket和ServerSocket,分别用来实现双向安全连接的客户端和服务器端,它们是基于TCP协议进行工作的,它的工作过程如同打电话的过程,只有双方都接通了,才能开始通话。进行网络通信时,Socket需要借助数据流来完成数据的传...原创 2018-09-05 23:25:42 · 1303 阅读 · 0 评论 -
JComponent的setStroke
默认情况下,Graphics 绘图类使用的笔画属性是粗细为1个像素的正方形,而Java2D的Graphics2D类可以调用setStroke()方法设置笔画的属性,如改变线条的粗细、虚实和定义线段端点的形状、风格等。语法如下: setStroke(Stroke stroke) 其中,参数stroke是Stroke接口的实现类。 setStrok...原创 2019-05-06 09:59:20 · 562 阅读 · 0 评论 -
Intellij IDEA调试功能使用总结
step over / step into / force step into/step out等。 1.设置断点 选定要设置断点的代码行,在行号的区域后面单击鼠标左键即可。 2.开启调试会话 点击红色箭头指向的小虫子,开始进入调试。 3.单步调试 3.1 step over 点击...原创 2019-05-06 14:41:06 · 372 阅读 · 0 评论 -
Linux使用
linux目录结构1、/- 根每一个文件和目录从根目录开始。只有root用户具有该目录下的写权限。请注意,/root是root用户的主目录,这与/.不一样2、/bin中 - 用户二进制文件包含二进制可执行文件。在单用户模式下,你需要使用的常见Linux命令都位于此目录下。系统的所有用户使用的命令都设在这里。例如:ps、ls、ping、grep、cp3、/sbin目录 - ...原创 2019-06-12 21:20:43 · 249 阅读 · 0 评论 -
Java核心技术 卷一 第3章 Java的基本程序设计结构
。原创 2019-09-08 12:45:42 · 146 阅读 · 0 评论 -
Java核心技术 卷一 第4章 对象和类
。原创 2019-09-08 12:46:17 · 256 阅读 · 0 评论 -
Java核心技术 卷一 第5章 继承
。原创 2019-09-08 12:46:51 · 128 阅读 · 0 评论 -
Java核心技术 卷一 第6章 接口、lambda表达式与内部类
。原创 2019-09-08 12:48:19 · 294 阅读 · 0 评论 -
Java核心技术 卷一 第7章 异常、断言和日志
。原创 2019-09-08 12:49:10 · 157 阅读 · 0 评论 -
Java核心技术 卷一 第8章 泛型程序设计
。原创 2019-09-08 12:49:49 · 203 阅读 · 0 评论 -
Java核心技术 卷一 第9章 集合
目录Java集合框架将集合的接口与实现分离Collection接口迭代器泛型实用方法集合框架中的接口具体的集合链表数组列表散列集数集队列与双端队列优先级队列映射基本映射操作更新映射项映射视图弱散列映射链接散列集与映射枚举集与映射标识散列映射视图与包装器轻量级集合包装器子范围不可修改的视图同...原创 2019-09-08 12:50:21 · 839 阅读 · 0 评论 -
Java核心技术 卷一 第10章 图像程序设计
。原创 2019-09-08 12:51:10 · 144 阅读 · 1 评论 -
Java核心技术 卷一 第2章 Java程序设计环境
。原创 2019-09-08 12:44:42 · 114 阅读 · 0 评论 -
Java核心技术 卷一 第1章 Java程序设计概述
。原创 2019-09-08 12:43:27 · 160 阅读 · 0 评论 -
#{}与${}的区别
本文摘自三篇文章,觉得有用。※:PreparedStatement不允许在插入参数时改变SQL语句的逻辑结构。※:为什么它这样处理就能预防SQL注入提高安全性呢?其实是因为SQL语句在程序运行前已经进行了预编译,在程序运行时第一次操作数据库之前,SQL语句已经被数据库分析,编译和优化,对应的执行计划也会缓存下来并允许数据库已参数化的形式进行查询,当运行时动态地把参数传给PreprareSt...转载 2019-06-19 20:22:12 · 35067 阅读 · 10 评论 -
单例模式
单例模式原创 2019-06-16 21:44:18 · 89 阅读 · 0 评论 -
接口的意义
什么是Java的接口?其实接口的概念较为抽象,可以理解为接口是一系列方法和特征的集合。方法和特征是类的组成部分,如果从编程的角度而言,Java的接口可以对应这Java中特定的语法结构。Java接口与Java抽象类是不一样的,抽象类可以实现某些方法,而接口则不能。下面,从接口的概念和功能上进一步详细描述其存在的意义。那么Java在类中定义一个接口有什么意义呢?类所描述的是一个实体,包含试题的...原创 2019-06-16 23:31:10 · 1056 阅读 · 0 评论 -
POI
POI原创 2019-06-17 23:17:24 · 268 阅读 · 0 评论 -
Java基础
Java基础需要掌握的知识:1、数据类型和运算符2、流程控制3、数组4、类和对象5、继承和多态6、抽象类和接口7、异常8、集合9、泛型10、常见实用类11、输入输出IO流12、注解13、多线程14、网络编程技术15、XML技术...原创 2019-06-23 14:35:52 · 136 阅读 · 0 评论 -
前序遍历中序遍历后序遍历
原创 2019-07-02 22:32:33 · 2450 阅读 · 0 评论 -
咱们从头到尾说一次 Java 垃圾回收
原创:率鸽阿里巴巴中间件转载 2019-07-22 20:26:19 · 421 阅读 · 0 评论 -
List接口
1、使用ArrayList类动态存储数据:用之前需要导包:import java.util.ArrayList;针对数组的缺陷,Java集合框架提供了ArrayList集合类,对数组进行了封装,实现了长度可变的数组,而且和数组采用相同的存储方式,在内存中分配连续的空间,经常称其为动态数组。但是和数组不同的是,数组只能添加同一类型的数据,ArrayList可以添加任何类型的数据,并且添加的数据都...原创 2018-08-28 23:39:18 · 238 阅读 · 0 评论 -
面向对象和类
面向对象的三大特征:封装,继承,多态。面向对象设计的过程就是抽象的过程,一般分三步完成:1、发现类,类定义了对象将会拥有的特征(属性)和行为(方法)。2、发现类的属性,对象所拥有的静态特征在类中表示时称为了的属性。3、发现类的行为,对象所执行的操作称为类的方法。 类的定义:[ 访问修饰符 ] class 类名 { [ 访问修饰符...原创 2018-08-17 22:28:09 · 413 阅读 · 0 评论 -
Math类
java.lang中的类不需要导包。字段 E 比任何其他值都更接近 e(即自然对数的底数)的 double 值。 PI 比任何其他值都更接近 pi(即圆的周长与直径之比)的 double 值。 方法 返回值 方法 说明 int abs(int a) 返回a的绝对值,参数可为:int,long,float,double,相...原创 2018-08-18 15:46:55 · 116 阅读 · 0 评论