![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaSE
文章平均质量分 85
我愿成为你头顶的云
学无止境,尽量减少自己的无知。
展开
-
java将字符串生成图片
java将字符串保存为图片因为最近接触到的需求是要将指定的字符串内容保存为图片,我知道肯定要用awt相关的东西,但是以前没有接触过awt,所以只能去网上学习相关的东西和找有关的资料,好在最后可以解决,直接上代码:/** * @Description 通用工具类 * @ClassName CommonUtil * @Author yanchengzhi * @date 2021.06.22 21:19 */public final class CommonUtil { /*原创 2021-06-27 20:37:44 · 2049 阅读 · 1 评论 -
关于克隆
关于克隆1、前言2、克隆3、浅克隆3、深克隆1、前言因为最近在了解设计模式,其中创建型模式中有一种原型模式,该模式采用克隆的方式,克隆原型实例,来生成一个克隆对象,提供给调用者。关于克隆,以前在看Object类源码时,看到有一个clone方法,但是没太在意,所以也不太了解,看来需要有一些了解了。2、克隆什么是克隆?可以简单的理解为复制,我们在电脑上进行文件复制的时候,实际上就是属于克隆。但是有时候克隆和复制并不是完全等同的。Java中的克隆主要指对象的克隆,即我new出来一个对象,然后通过clone原创 2021-04-04 19:20:45 · 317 阅读 · 1 评论 -
Java中的正则表达式
Java中的正则表达式1、String类的matches方法2、Pattern类3、Matcher类4、测试Java中提供了对正则表达式的支持。String类提供了一个matches方法来进行简单的字符串正则匹配,也有专门的Pattern类和Matcher类来提供更加强大的正则支持。1、String类的matches方法api中的描述:测试: public static void main(String[] args) { // 腾讯的邮箱格式 // 首字原创 2021-03-13 22:47:19 · 125 阅读 · 0 评论 -
JDBC相关
JDBC相关1、前言2、JDBC2.1、JDBC的概念2.2、JDBC中的核心类和接口2.3、DriverManager类2.4、Connection接口2.5、Statement接口2.6、PreparedStatement接口2.7、使用JDBC对数据表进行增、删、改2.7.1、准备工作1、前言我们在Java程序或JavaWeb程序中如果想要连接到数据库,那么该怎么实现呢?Java提供了JDBC API来帮助用户进行数据库连接操作。如下图:据图可以看到,JDBC API是连接Java程序和各个数原创 2021-02-06 01:34:31 · 237 阅读 · 0 评论 -
反射机制
反射机制1、概述2、Class类3、反射访问构造方法1、概述Java中的反射编程是通过在JVM运行时获取某个类型的字节码(Class)对象,从而利用其反向获取此类型定义的内部信息实现编程的一种机制。反射编程在设计开发工具框架时使用较多,如Spring、hibernate等,反射编程通常属于非常规操作,存在一定的安全问题。Java应用框架技术中使用比较频繁,反射编程较普通的编程方式执行效率要低。通过Java的反射机制,我们可以在程序中访问已经装载到JVM中的Java对象描述,实现访问、检测、修改描述Ja原创 2021-01-23 20:01:59 · 86 阅读 · 0 评论 -
网络通信
网络编程1、计算机网络1.1、网络的概念1.2、网络的分类1.2.1、局域网(LAN)1.2.2、城域网(MAN)1.2.3、广域网(WAN)1.3、网络协议1.3.1、OSI七层模型1.3.2、IP协议1.3.3、TCP协议1.3.4、UDP协议1.3.5、TCP/IP协议2、端口和套接字2.1、端口2.2、套接字3、URL现在有这样一个场景,客户机想和服务器进行通信。为了实现两台计算机之间的通信,那么必须用一个网络线路将它们连接起来,如下图:客户机指请求信息的计算机或程序,服务器指提供信息的计算机原创 2021-01-23 01:13:02 · 599 阅读 · 0 评论 -
多线程
多线程1、前言2、进程、线程、多线程2.1、进程2.2、线程2.3、多线程2.4、进程和线程的联系及区别3、并行与并发3.1、并行3.2、并发3.3、并行与并发的区别3.4、多线程是并发还是并行4、线程实现的两种方式4.1、继承Thread类1、前言我们以前写的Java程序都是单线程的,也就是说一次只做一件事,这个很简单,直接在main方法中写就行了,主线程可以去实现它。生活中,比如一个人,可以同时进行呼吸、血液循环、码字等多个活动。又比如一台电脑,它可以同时播放音乐、播放视频、下载资源等,也可以同时完原创 2021-01-21 03:26:45 · 243 阅读 · 0 评论 -
I/O流
I/O相关1、File类1.1、构造方法1.2、常用方法2、流的概念2.1、输入流2.1.1、字节输入流2.1.2、字符输入流2.2、输出流2.2.1、字节输出流2.2.2、字符输出流3、文件复制4、文件移动5、数据输入/输出流6、序列化读写6.1、序列化6.2、反序列化我们以前运行Java程序的时候,数据都是存在变量、数组、对象中,这些都是暂时存在的,程序运行时才会存在内存中,属于虚拟空间,程序关闭后这些数据将不复存在。为了能够永久的保存程序中创建的数据,需要将数据保存到磁盘文件中,这样在其他程序中可以原创 2021-01-20 01:43:23 · 131 阅读 · 0 评论 -
泛型
泛型1、泛型的概念2、定义泛型类3、声明多个类型4、声明数组类型5、声明集合类的容器元素6、限制泛型可用类型7、使用类型通配符8、泛型接口1、泛型的概念泛型的出现,可以让我们少些代码,它的主要作用是解决类型的安全问题,不会因为将对象置于某个容器中而失去其类型。在泛型出现之前,Java提供了对Object类型引用的任意操作,即向上转型和向下转型,上转型没问题,但是向下转型这种强制类型转换是存在隐患的,因此Java提供了泛型机制。Java泛型(generics)是JDK5中引入的一个新特性, 泛型提供了编原创 2021-01-19 01:30:18 · 137 阅读 · 0 评论 -
枚举类型
枚举类型1、枚举类型的概念2、枚举的定义3、枚举类的常用方法4、类的内部定义枚举5、枚举的属性、构造方法、实例方法6、枚举的常用用法6.1、定义常量6.2、作为swicth的参数6.3、枚举中定义实例方法6.4、覆盖toString方法6.5、实现接口6.6、接口来组织枚举6.7、枚举集合1、枚举类型的概念先看一个例子。定义一个接口,这个接口用来定义常量:public interface Common { public static final String YES = "yes";原创 2021-01-18 22:31:46 · 2625 阅读 · 0 评论 -
集合类
集合类1、前言2、集合框架3、Collection接口4、区分Collection和Collections5、List集合5.1、List接口5.2、ArrayList实现类5.3、LinkedList实现类5.4、Vector实现类6、Set集合6.1、Set接口6.2、HashSet实现类6.3、TreeSet实现类6.4、LinkedHashSet实现类7、Map集合7.1、Map接口2、HashMap实现类3、TreeMap实现类4、Hashtable实现类8、ArrayList和LinkedLis原创 2021-01-18 01:52:03 · 180 阅读 · 0 评论 -
Java基础练习
以下搜集了关于Java基础的一些练习,来巩固对Java的理解。1、求三个数的最大公约数和最小公倍数。首先要明确最大公约数和最小公倍数的概念。最大公约数:最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个。最小公倍数:两个或多个整数的公倍数里最小的那一个叫做它们的最小公倍数。思路:先分析最大公约数。比如4和6,最大公约数是2,4/2 = 0和6/2=0同时成立,那么可以使用for循环,从1开始除,一直除到最小的数4。代码:/* * 这个类里面的方法全部为静态原创 2021-01-17 02:10:39 · 162 阅读 · 0 评论 -
异常处理
异常处理1、概述2、异常体系结构2.1、Error类2.2、Exception类3、异常的声明及抛出4、异常的捕获和处理5、常用方法6、自定义异常类型7、总结1、概述我们在程序的设计和运行调试的过程中,不可避免会发生错误。尽管Java提供了便于写出安全代码的方法,我们开发人员也尽量的减少错误的发生,但还是避免不了。因此Java提供了异常处理机制来帮助我们检查可能出现的错误,来保证程序的可读性和可维护性。Java中是将异常封装到一个类中的,出现错误时,就会抛出这个异常类。在程序中,错误可能产生于各种原因原创 2021-01-16 17:58:49 · 172 阅读 · 0 评论 -
类和对象
类和对象原创 2021-01-16 01:28:04 · 152 阅读 · 0 评论 -
字符串类
字符串类1、String类1.1、构造方法1.2、常用方法1.3、字符串的连接2、StringBuilder类2.1、构造方法2.2、常用方法3、StringBuffer类4、总结字符串是Java程序中经常要处理的对象,因此有必要熟练的掌握字符串的各种处理方法,有助于提高我们开发的效率。Java中与字符串有关的类有String类、StringBuilder类、StringBuffer类。1、String类char类型只能表示单个字符,如果想使用多个字符,那么可以使用String类。Java中将字符串视原创 2021-01-14 23:18:15 · 745 阅读 · 0 评论 -
Scanner类
Scanner类Scanner类是Java5的新特征,我们可以通过 Scanner 类来获取用户的输入。api文档说明如下:构造方法如下:我们基本用的是:Scanner sc = new Scanner(System.in);Scanner类提供了很多方法,可以参照java.util.Scanner类的api文档,这里就说常用的几种方法:next():查找并返回此扫描仪的下一个完整令牌。 一个完整的令牌在分隔符模式之前和之后是与分隔符模式匹配的输入。 这种方法可能会在等待输入扫描时阻塞,原创 2021-01-14 20:31:48 · 107 阅读 · 0 评论 -
日期时间类
日期时间类1、Date类1.1、构造方法1.2、常用方法1.3、日期的格式化2、Calendar类3、GregorianCalendar类4、总结1、Date类现实生活中,日期时间类的数据很常见。Java中提供了Date类来封装当前的时间类和日期。api文档说明如下:1.1、构造方法很多构造方法都已经被弃用了,目前Date类的构造方法就两种:Date():分配一个Date对象并对其进行初始化,以便它表示分配的时间,测量到最近的毫秒,即获取到系统的当前时间。Date(long date):接原创 2021-01-14 18:23:57 · 194 阅读 · 0 评论 -
包装类
Java中的包装类Java它是一种面向对象的语言,Java中的类把方法和数据连接到一起,构成了自包含式的处理单元。但是Java中不能定义基本类型对象,为了能够将基本类型当做对象来处理,Java为每种基本类型都提供了包装类,如int型的包装类Integer,boolean型的包装类Boolean,这样就可以将这些基本类型转换为对象,并且能调用一些方法了。从基本类型转换为对应的包装类,叫做装箱。从包装类转换为对应的基本类型,叫做拆箱。1、所有的包装类基本类型及对应的包装类如下表:以图结构来说明:数原创 2021-01-14 01:54:53 · 103 阅读 · 0 评论 -
数字处理类
数字处理类1、前言2、Math类2.1、三角函数方法2.2、指数函数方法2.3、取整函数方法2.4、最大值、最小值、绝对值、随机数方法3、DecimalFormat类4、Random随机类4.1、Math类的random方法产生随机数4.2、Random类产生随机数5、例子1、前言在解决实际问题的时候,对数字的处理非常普遍。比如数学问题、随机问题、商业货币问题、科学计算问题等。Java中提供了处理相关问题的类,如用于格式化数字的DecimalFormat类,数学计算相关的Math类,随机数相关的Rand原创 2021-01-13 22:55:25 · 300 阅读 · 0 评论 -
System类
System类System表示当前运行的JVM,提供标准输入、输出和错误输出流对象。只读,不能实例化。api文档说明如下:成员属性如下:提供的方法如下:以下通过一个例子来说明常用属性和方法: public static void main(String[] args) { checkAge(-2); checkAge(200); checkAge(25); // 获取当前系统的时间戳 long c原创 2021-01-13 02:01:56 · 111 阅读 · 1 评论 -
Object类
Object类Object类1、Object类介绍2、getClass方法3、hashCode方法4、equals方法5、toString方法6、总结Object类1、Object类介绍在Java中,所有的类都直接的或间接的继承了Object类,Object类是所有类型的父类,是类结构中的根。全限定名为:java.lang.Object。如果一个类没有明确指定继承哪个类,那么它就默认的继承Object类。下面是jdk的api文档中的定义:Object类中提供的所有方法如下:如果不算方法重载的话原创 2021-01-13 01:37:21 · 159 阅读 · 0 评论 -
Java中调用第三方程序
Java代码调用外部程序我想在Java代码内部调用外部的第三方程序,该怎么实现,以下用一个例子来说明:public class Test { // 测试调用commond命令 public static void main(String[] args) throws IOException { // 构建ProcessBuilder对象 ProcessBuilder processBuilder = new ProcessBuilder();原创 2021-01-13 00:38:39 · 581 阅读 · 1 评论 -
数组
数组1、数组的概念2、数组的特点3、一维数组3.1、一维数组的声明及创建3.2、一维数组的内存结构3.3、数组的初始化4、二维数组4.1、二维数组的声明及创建4.2、二维数组的内存结构4.3、二维数组的初始化5、数组中的常用方法5.1、遍历数组元素5.2、填充替换数组元素5.3、数组元素排序5.4、数组复制5.5、搜索数组是否包含某元素5.6、数组转为集合6、例子7、数组的几种排序算法7.1、冒泡排序7.2、直接选择排序7.3、反转排序1、数组的概念数组是常见的一种数据结构。是相同类型的、用一个标识符封原创 2021-01-11 01:20:16 · 309 阅读 · 3 评论 -
Java语言基础
Java语言基础前言1、Java主类结构1.1、类的定义1.2、包的声明1.3、main方法1.4、注释1.5、标识符和关键字前言尽管学习Java有一段时间了,但是俗话说的好:温故而知新。如果长时间不使用,有的东西可能会遗忘,毕竟人的瞬时记忆居多。所以,想把以前学的东西作一个总结,然后到不记得的时候,回头去看看。从Java语言基础开始,虽然现在看来觉得很简单,但是注意每一个简单的细节是一个合格程序员应该具有的品质。废话不多说。1、Java主类结构Java程序的基本组成单元是类,类体中又包括属性和方法原创 2021-01-10 18:59:51 · 140 阅读 · 0 评论 -
Java读写XML
1、XML是什么xml是Extensible Markup Language的缩写,可扩展标记语言。由程序编写者自定义实现,xml主要用来以标记的文本形式表示一组或多组数据,很多计算机语言都提供对xml文件的解析,使用xml文件格式传递数据可以实现跨平台计算机编程语言,xml是W3C组织推荐的数据交换格式标准。XML是一种数据交换的格式标准。2、XML的语法标准声明为:<?xml version ="1.0" encoding = "UTF-8"?>标签应封闭,像html标签那样。原创 2021-01-02 22:03:11 · 982 阅读 · 1 评论 -
异常统一处理
前言我们在写代码的时候,对于可能有异常的代码,处理方式有2种,要么将异常在方法中throws抛出去,抛给别人处理。要么就是用try catch块将有问题的代码包起来,自行处理。如果方法中可能会出异常的代码有很多,那么通过以上2种方式处理的结果就是:方法后面跟着一大堆譬如throws aaaException,throwsbbbException,throwscccException…之类的,当然你也可以直接抛一个父类throws Exception将这些都囊括;然后也可能是方法中一大堆的try catch原创 2020-12-26 12:12:26 · 229 阅读 · 0 评论 -
Java中的内部类
内部类的简单概述一、定义类的一般做法二、定义内部类我们作为刚入门的新手,定义一个类的主要方式是在一个文件中定义一个类。但是一个文件中也可以定义多个类,且其中任何一个类都不在其他类的内部,这种情况不在这节的讨论范围内。这节的讨论范围主要是在一个类的内部再定义一个类,最外层的类称为外部类,里面的则称为内部类。内部类又可以按照定义的形式不同分为成员内部类、局部内部类、匿名内部类。下面做逐一说明。一、定义类的一般做法我们以往定义一个类,都只是在一个文件中定义一个类就已经足够满足使用需求了。如下:public原创 2020-07-30 13:36:51 · 94 阅读 · 0 评论