学习笔记
zhaohong_bo
这个作者很懒,什么都没留下…
展开
-
java编程笔记
程序功能:java统计abacbacdadbc中的每个字母出现的次数,输出格式是:a(4)b(3)c(3)d(2) 分析:将大小写按照同一个字母处理,最后都输出小写。 思路: 1.将string转成字符串数组,便于处理 2.遍历数组,将统计放入int数组中 3.遍历int数组,拼接字符串 代码如下: public static String AbcNum(String str){原创 2016-03-04 20:33:25 · 358 阅读 · 0 评论 -
mysql-5.7.10-winx64 MySQL服务无法启动,服务没有报告任何错误的解决办法
总结报错原因: 在my.init文件下新增data目录(datadir = F:\mysqldata )最新解压版本的mysql 解压安装的时候报错 D:\mysql\mysql-5.7.10-winx64\bin>net start mysql MySQL 服务正在启动 …. MySQL 服务无法启动。服务没有报告任何错误。请键入 NET HELPMSG 3534 以获得更多的帮助。mys转载 2016-05-26 07:43:51 · 7220 阅读 · 0 评论 -
Spring Boot 学习之旅
1. Spring Boot默认读取的application.properties有点坑,并没有主动去掉每一行后边的空格,如 encoding.spring.thymeleaf.encoding=UTF-8 就识别成了UTF-8+空格,所以导致查找编码格式的时候报错。原创 2016-07-27 22:45:30 · 270 阅读 · 0 评论 -
学习笔记
一. CSS 如何实现文字的垂直居中 1. 二.问题记录 1.创建新的JSP页面的时候报错:The superclass “javax.servlet.http.HttpServlet” was not found on the Java Build Path 问题原因:Java web项目,未添加Tomcat服务器。 2. 找不到 .keystore文件。 问题原因原创 2016-02-21 20:48:20 · 306 阅读 · 0 评论 -
学习笔记之12个月提升计划
Java世界博大精深,有太多的东西要学。如果一头扎进去,很可能会淹没在Java技术的海洋里。于是,最近一直在思考列一个提纲,作为高级工程师到资深、再到架构之路的路标。学习笔记一栏,即为本计划的博客记录。将自己的计划列出来,一是作为对自己的激励与监督,二是想要找一些志同道合的朋友一起前行。路漫漫其修远兮,吾将上下而求索。...原创 2018-04-08 17:00:27 · 334 阅读 · 1 评论 -
UML类图
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)基本概念:类图(Class Diagram): 类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之...转载 2018-07-08 13:20:36 · 192 阅读 · 0 评论 -
JDK演化系列(1.0~~~1.9)
系列文章导读JDK 1.0包含的功能JDK 1.1新增&优化&去掉的功能JDK 1.2新增&优化&去掉的功能JDK 1.3新增&优化&去掉的功能JDK 1.4新增&优化&去掉的功能JDK 1.5新增&优化&去掉的功能JDK 1.6新增&原创 2018-09-09 09:44:12 · 2537 阅读 · 0 评论 -
Java修炼之路——基础篇——平台无关性
Java如何实现平台无关性? 首先说无论是哪种语言,都需要经过操作系统和CPU来完成程序的运行。平台无关性指的是程序不会因为操作系统和处理器的不同而不能运行或者发生运行错误。而不同的CPU和OS组成的平台的机器指令是不同的。 C\C++等语言,需要先使用编译器将文件编译为可执行文件(源文件-->汇编语言代码-->目标文件(目标机器指令)),然后执行。由于编译过程中不同的CP...原创 2019-02-22 07:09:09 · 164 阅读 · 0 评论 -
Java修炼之路——基础篇——值传递
什么是值传递?引用传递?值传递:值传递是将变量的一个副本传递到方法中,方法中如何操作该副本,都不会影响原变量的值。 引用传递:引用传递是将变量的地址传递到方法中,方法中操作该变量,会对其产生影响。为什么说Java中只有值传递?Java中的方法形参有两种,1:基本类型及其包装类,2:引用类型对于以上两种,都是值传递。类型1:直接传值过去,类型2:传递的是引用本身的副本,而不是引用本身。...原创 2019-02-22 08:06:14 · 185 阅读 · 0 评论 -
Java修炼之路——基础篇——数据类型
基础数据类型:整型(byte short int long )、浮点型、布尔型、字符型boolean:只表示一位的信息,true,false。默认为false,基本上占一字节char: 16位,2字节,Java内部使用Unicode字符集 最小值是’\u0000’(即为0) 最大值是’\uffff’(即为65,535);可以当整数来用,它的每一个字符都对应...原创 2019-02-22 11:16:46 · 160 阅读 · 0 评论 -
Java修炼之路——基础篇——Java集合类
集合类的全景图常用集合类特性1. Collection:每个位置对应一个元素 1.1: List 存放有序元素,允许重复元素,允许元素为null 1.1.1: ArrayList: 内部结构为数组; 初始容量为10; 插入、删除的移动速度慢;动态扩容1.5倍; 线程不安全; 1.1....原创 2019-02-27 18:48:22 · 270 阅读 · 0 评论 -
Java修炼之路——基础篇——Java集合类详解1
SynchronizedList和Vector的区别java.util.Vector java.util.Collections.$SynchronizedListVector用同步方法,SynchronizedList用同步代码块,SynchronizedList可以指定锁定的对象SynchronizedList有很好的扩展和兼容功能,能把所有List的子类都转为线程安全的类使用Sy...原创 2019-02-27 21:11:02 · 167 阅读 · 0 评论 -
Java修炼之路——基础篇——Java集合类详解2
Set和List区别?Set如何保证元素不重复?Set、List都实现了Collection接口,List是有序的列表,Set是无序的集合(TreeSet有序)List实现类:ArrayList :基于数组,可动态扩容LinkedList:基于双向链表,可做堆栈使用Vector:基于数组,基本相当于线程安全的ArrayList(基于synchronized),已被CopyOnWrite...原创 2019-02-28 11:46:29 · 144 阅读 · 0 评论 -
Java工程师修炼之路
主要版本更新时间备注v1.02015-08-01首次发布v1.12018-03-12增加新技术知识、完善知识体系v2.02019-02-19结构调整,更适合从入门到精通;进一步完善知识体系; 新技术补充;1基础篇01面向对象→ 什么是面向对象面向对象、面向过程面向对象的三大基本特征和五大基本原则→ 平台无关性Java 如何实现的平台无关JVM 还支持哪些语...转载 2019-02-19 16:54:09 · 299 阅读 · 0 评论 -
Java修炼之路——基础篇——String
String1:字符串的不可变性什么是不可变对象?不可变对象是指创建后无法变更的对象String为什么是不可变的?String类为final,并且内部字符数组也为final。所以String对象是不可变对象。String类为什么要设计为不可变?主要出于对效率和安全的考量。当你复制一个对象的时候,如果你知道它是不可变的,那么你只需要复制此对象的引用即可,一般引用会比对象小很多,所以能提高...原创 2019-02-25 22:43:26 · 421 阅读 · 0 评论 -
Java修炼之路——基础篇——枚举
枚举的用法每个枚举变量其实都是枚举类的一个实例。枚举与单例各种模式的单例模式,包括枚举实现的单例//懒汉模式class SingletonA { private static SingletonA instance = new SingletonA(); //保证不能通过new SingletonB的方式创建对象 private SingletonA(){} public sta...原创 2019-03-01 20:54:58 · 322 阅读 · 1 评论 -
面向对象
1:什么是面向对象?**面向对象是什么?**面向对象(Object Oriented, OO)是一种思想,是对现实世界的理解和抽象,用以解决现实问题。面向对象是对面向过程的一种自然演进,面向过程将解决问题的过程抽象成一个个的函数,逐个调用以解决问题。而面向对象是将问题抽象成一个个的实体(对象),每个实体有自己的方法和属性。**举例**:我要从北京到上海,如何完成上述的需求?面向对象: 抽...原创 2019-02-20 18:56:04 · 135 阅读 · 0 评论 -
Java修炼之路——基础篇——Java关键字
1:transient当对象被序列化时,transient阻止其修饰的对象进行序列化;当反序列化时,此对象的值不会被恢复。2:instanceof判断引用指向的对象,是不是某个类及其子类的实例对象;class Person { }public class Man extends Person { public static void main(String[] args) {...原创 2019-02-26 15:17:45 · 187 阅读 · 0 评论 -
基础篇--Java IO--概览
字符流、字节流、输入流、输出流同步、异步、阻塞、非阻塞、Linux 5 种 IO 模型原创 2019-03-04 08:23:44 · 174 阅读 · 0 评论 -
BIO、NIO 和 AIO
BIO、NIO 和 AIO的区别https://www.cnblogs.com/barrywxx/p/8430790.html三种 IO 的用法与原理nettyhttp://ifeve.com/netty5-user-guide/原创 2019-04-04 18:57:00 · 121 阅读 · 0 评论 -
Java 时间处理
时区、冬令时和夏令时、时间戳、Java 中时间 API原创 2019-04-10 14:35:58 · 260 阅读 · 0 评论 -
Java位运算
java中位运算^,&,<<,>>,<<<,>>>总结1.^(亦或运算) ,针对二进制,相同的为0,不同的为1public static void main(String[] args) { System.out.println("2^3运算的结果是 :"+(2^3)); //打印的结果是: 2^3运算的结...原创 2019-04-01 14:32:43 · 253 阅读 · 0 评论 -
SimpleDateFormat与线程安全
SimpleDateFormat不是线程安全的。SimpleDateFormat(下面简称sdf)类内部有一个Calendar对象引用,它用来储存和这个sdf相关的日期信息,例如sdf.parse(dateStr),sdf.format(date) 诸如此类的方法参数传入的日期相关String, Date等等, 都是交由Calendar引用来存储的。这样就会导致一个问题,如果多个线程共享sdf,...原创 2019-04-10 20:34:39 · 948 阅读 · 0 评论 -
如何在东八区的计算机上获取美国时间
既可以用旧API(JDK8之前),也可以使用新API。以下用旧API为例:在Java语言中,可以通过java.util.Calendar类取得一个本地时间或者指定时区的时间实例,如下:// 取得本地时间:Calendar cal = Calendar.getInstance();//取得指定时区的时间: TimeZone zone = TimeZone.getTimeZone(...原创 2019-04-10 20:47:40 · 1669 阅读 · 0 评论 -
有了Unicode为啥还需要UTF-8
有了Unicode为啥还需要UTF-8原创 2019-04-10 21:16:48 · 1826 阅读 · 0 评论 -
GBK、GB2312、GB18030
GBK、GB2312、GB18030原创 2019-04-10 21:48:49 · 718 阅读 · 0 评论 -
Java反射机制
1. 什么是反射机制 2. 反射机制能做什么 3. 反射机制功能代码示例 4. 反射机制的常见应用原创 2019-04-07 08:49:19 · 125 阅读 · 0 评论 -
UTF8、UTF16、UTF32区别
UTF8、UTF16、UTF32区别原创 2019-04-10 22:19:30 · 14407 阅读 · 1 评论 -
URL编解码、Big Endian和Little Endian
Big Endian和Little Endian原创 2019-04-10 22:28:51 · 423 阅读 · 0 评论 -
Java如何解决乱码问题
java在字符串中统一用Unicode表示。对于任意一个字符串:String string = “测试字符串”;如果源文件是GBK编码,操作系统默认环境编码也为GBK,那么编译的时候,JVM将按照GBK编码将字节数组解析为字符,然后将字符转换为Unicode格式的字节数组,作为内部存储(字节数组→字符→Unicode字节数组)当打印这个字符串时,JVM根据操作系统本地的语言环境,将Unico...原创 2019-04-10 22:35:50 · 24190 阅读 · 0 评论 -
Java语法糖
先Mark,需要后续补齐、参考:https://www.cnblogs.com/qingshanli/p/9375040.html原创 2019-04-10 22:48:05 · 285 阅读 · 0 评论 -
Java ASM与Javassit
操作java字节码的工具有两个比较流行,一个是ASM,一个是Javassit 。ASM :直接操作字节码指令,执行效率高,要是使用者掌握Java类字节码文件格式及指令,对使用者的要求比较高。Javassit 提供了更高级的API,执行效率相对较差,但无需掌握字节码指令的知识,对使用者要求较低。应用层面来讲一般使用建议优先选择Javassit,如果后续发现Javassit 成为了整个应用的效率...原创 2019-04-07 12:05:50 · 587 阅读 · 0 评论 -
Java序列化、反序列化
目录1:什么是序列化、反序列化?2:序列化的用途?3:序列化的n种方式1:什么是序列化、反序列化?把对象转换为字节序列的过程称为对象的序列化把字节序列转换为对象的过程中称为对象的反序列化2:序列化的用途?把对象的字节序列持久化到磁盘,通常会放到文件中;在网络上传输对象的字节序列; 在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存。...原创 2019-04-07 12:53:02 · 78 阅读 · 0 评论 -
Java注解
1:常用注解Spring:https://blog.csdn.net/qq_33206732/article/details/80420355https://blog.csdn.net/sha1024/article/details/82791098拓展:注释https://blog.csdn.net/qq_37939251/article/details/83215703...原创 2019-04-07 17:21:05 · 76 阅读 · 0 评论 -
并发和并行及多线程基本概念
并发 并行 同步 异步 多线程原创 2019-04-11 14:54:55 · 2396 阅读 · 0 评论 -
Java之JMS
一:JMS简介 JMS即Java消息服务(Java Message Service),是一个Java平台定义的关于面向消息中间件的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。JMS是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。 JMS允许应用程序组件基于JavaEE平台创建、发送、接收和读取消息。它使分布式通信耦合度更低,消息服务更加可靠。...原创 2019-04-08 08:23:34 · 2107 阅读 · 0 评论 -
Java之JMX
JMX,即Java Management Extensions,Java管理扩展。是一个为应用程序、设备、系统等植入管理功能的框架。 JMX提供了一种简单、基础的方法,用来管理应用、设置、服务等资源。由于JMX是动态的,你可以使用JMX技术来监控和管理处于创建、安装和运行态的资源。你甚至可以使用JMX技术监控和管理虚拟机。JMX架构图:可以看出,JMX分为三层基础层MBean,分...原创 2019-04-08 16:22:52 · 2851 阅读 · 0 评论 -
Java -- 泛型
1、什么是泛型?泛型(Generics)是把类型参数化,运用于类、接口、方法中,在调用时传入具体的类型。泛型就是参数化类型适用于多种数据类型执行相同的代码 泛型的类型在使用时指定 泛型归根到底就是“模板”优点:使用泛型时,在实际使用之前类型就已经确定了,不需要强制类型转换。操作的数据类型被指定为一个参数,这种参数类型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法...原创 2019-04-08 18:02:32 · 109 阅读 · 0 评论 -
进程和线程
进程:是并发执行的程序在执行过程中分配和管理资源的基本单位,是一个动态概念,竞争计算机系统资源的基本单位。线程:是进程的一个执行单元,是进程内调度实体。比进程更小的独立运行的基本单位。线程也被称为轻量级进程。一个程序至少一个进程,一个进程至少一个线程。根本区别:进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位在开销方面:每个进程都有独立的代码和数据空间(程序上下文),程序...原创 2019-04-11 22:15:46 · 167 阅读 · 0 评论 -
Java多线程的4种实现方式
Java多线程的4种实现方式1:继承Thread并重写run方法,并调用start方法/** * Java实现多线程的方式1 * 继承Thread类,重写run方法 * @author hongbo.zhao 2019年4月12日 上午7:12:35 */class MyThread extends Thread { @Override public void run() {...原创 2019-04-12 07:48:57 · 16032 阅读 · 3 评论