- 博客(35)
- 收藏
- 关注
原创 常见的Linux命令
Linux常用命令 1.ls(list) 罗列出当前目录中的文件和目录,更常用的是ls -l/ll打印出更详细的信息 2.cd(change dir) 进入某个目录/切换到某个目录 特殊的目录: a).表示当前目录 b)… 表示当前目录的上级目录 c) ~表示当前目录的家(home)目录 d) /表示根目录 所有目录的最上级目录 Linux的目录结构也是一种树形结构 3.pwd 查看当前目录的完整...
2019-09-07 19:00:07
233
原创 JavaWeb、Jsp和 Servlet
Java Web HTTP1.1 1.发出请求 2.获取响应 B/S模型:浏览器-服务器模型 C/S模型:客户端-服务器模型 B/S模型的优点: 具有分布式特点,可以随时随地进行查询丶浏览等业务处理 业务扩展简单方便,通过增加网页即可增加服务功能 维护简单方便,只需要改变网页,即可实现所有用户的同步更新 开发简单,共享性强 HTTP协议的特点: Web应用程序的基础 基于TCP/IP协议的应...
2019-09-07 18:57:05
335
原创 java.sql.SQLException: The server time zone value '???ú±ê×??±??' is unrecognized or represents more
在学习jdbc中 private String url = "jdbc:mysql://localhost:3306/mytest"; 在使用mysql-connector-java-8.0.13.jar报错 java.sql.SQLException: The server time zone value '???ú±ê×??±??' is unrecognized or represents...
2019-08-02 14:24:42
248
原创 类集
类集(多线程+数据结构)-JDK1.2 1.ArrayList、LinkedList、Vector的关系与区别(源码) a.ArrayList基于数组实现List,采用懒加载策略,当一次调用add方法时,数组才会初始化为10(默认值)。 ArrayList扩容为原先数组的1.5倍。ArrayList采用异步操作,线程不安全,性能较高。 b.Vector(JDK1.0)基于数组实现List,当产生V...
2019-07-31 16:06:33
199
原创 JVM
JVM:Java内存模型(关于并发程序的内存模型-逻辑模型) 1.JMM的工作流程 工作内存:每个线程创建时分配的空间,线程私有.所有变量的读写均在工作内存中进行。 主内存:所有线程共享的内存区域,存放所有共享变量(类的实例变量、静态变量、常量)。 2.JMM三大特性 只有以下三个特性同时满足,才是线程安全的代码。 原子性:基本数据类型的访问读写都属于原子性操作. 若需要更大范围的原子性,需要使用...
2019-07-31 16:05:12
153
原创 线程池
线程池 ExecutorService:普通调度池 void execute(Runnable r) Future submit(Callable || Runnable) ScheduledExecutorService:定时调度池 public ScheduledFuture<?> scheduleAtFixedRate(Runnable command, long initial...
2019-07-31 16:01:56
134
原创 juc下的四大工具类
juc (java.util.conction)包下四大工具类:CAS+Lock 1.闭锁CountDownLatch public CountDownLatch(int count) : count表示需要等待的线程个数 public void countDown() : 计数器值-1(类似运动员线程) public void await() throws InterruptedExceptio...
2019-07-31 16:00:51
962
原创 多线程
多线程 1.进程与线程 进程是OS中资源分配的最小单元 线程是OS中任务分配的最小单元 创建与销毁一个线程的开销要比一个进程小得多,线程间通信也比进程间通信容易的多。 线程间通信:join()、wait/notify、yield、sleep 2.多线程常用操作方法 sleep:运行 -> 阻塞,当前线程立即交出CPU,进入阻塞态,不会释放对象锁 yield:运行 -> 就绪,系统调度交...
2019-07-31 15:59:13
146
原创 计算机网络基础
协议 协议分层 解耦合 封装 协议分层之后,各层协议需要分工 有一类协议叫做“自定制协议” 客户端给服务器发送到信息是啥格式 服务器返回给客户端的信息是啥格式 1.请求(request)和响应(response)中包含的信息有哪些 2.请求数据和响应数据如何组织(具体按照啥格式来序列化) 序列化:把对象变成字符串 反序列化:把字符串变成对象 序列化的常见方式: 1.xml 2.json: 优点:方...
2019-07-28 19:46:31
379
原创 反射
Object 类中 getClass()返回一个Class类型的对象 Class :类型 类:现实事物的抽象 对象:实现的具体事物(你所关注的事物对象) 1丶一个类的实例化对象的getClass()获取 2丶类型名称class eg: Date.class 3丶Class.forName(类的全限定名) 同一个类加载器中一个了的Class对象只有一个 类的实例化对象 通过构造方法实例化对象 通过...
2019-05-16 12:31:00
168
原创 方法引用,内建函数式接口
从最初开始,只要是进行引用都是针对于引用类型完成的,也就是只有数组、类、接⼝具备引用操作。 ⽅法引⽤⼀般结合函数式编程使⽤ 引⽤静态⽅法 String类的valueOf()方法 IUtil1 函数接口 (函数): Integer -> String String.valueOf(x) : 面向对象内容, String类的静态方法 IUtil1 -> Lambda表达式实现函数的具体逻辑...
2019-05-16 12:26:05
217
原创 枚举,接口加强
枚举 eunm 关n键字 定义枚举类 Enum 枚举类的父类 1、枚举类 2、枚举常量 3、静态方法 4、定义结构:静态方法和属性,成员方法和属性,实现接口 覆写Enum类的方法 5、应用场景 一个类的实例化对象可数的(性别,状态,周期 ,颜色); 6、支持 switch unicode public enum Color implements IColor { RED("红色", "#f...
2019-05-14 15:45:19
168
原创 泛型的一些问题
1 可变参数 可变参数的基本格式: public [static] [final] 返回值 ⽅方法名称([参数类型 参数名称][参数类型 … 参数名称]) {} 这个参数上使用的“…”实际上表示一个数组的结构。 注意点:如果要传递多类参数,可变参数⼀一定放在最后,并且只能设置⼀一个可变参数 package com.guthub.changhyh; public class TestVarArgs...
2019-05-08 22:10:36
233
原创 排序算法
排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。 稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的。 import java.util.Array...
2019-05-06 17:44:50
161
原创 循环队列
//设计循环队列。 public class MyCircularQueue { private int front; private int rear; private int [] elem; private int usedSize; public MyCircularQueue(){ this.front = 0; ...
2019-05-06 17:38:58
214
原创 实现一个最小栈
先创建两个栈 private MyStackImpl myStack; private MyStackImpl minStack;//最小栈 入栈: 如果两个栈都为空,都得入栈 出栈:判断出栈的元素是否和min里面的栈顶元素相同。相同都出。 //实现一个最小栈 public class TestMinStack { private MyStackImpl myStack; ...
2019-05-06 17:33:08
203
原创 栈实现队列
栈实现队列 首先需要建立两个栈,用这两个栈来实现队列。 private MyStackImpl myStack1; private MyStackImpl myStack2; 在这里我先创建好了两个栈。 栈是先进后出,而队列则为先进先出。 接下来看怎么实现: 入队:都入到s1栈中。 出队:都出s2栈中的元素。 首先判断s2栈是否为空。如果为空:把s1栈中的元素导入s2栈中。不为空...
2019-05-06 17:27:07
169
原创 两个队列实现栈
我们熟悉 栈 是先进后出的原则。要用队列来实现栈 首先:创建两个队列 private MyQueueImpl myQueue1; private MyQueueImpl myQueue2 入栈 1、第一次把元素放进第一个队列 2、不为空的队列 出栈:每次出不为空的队列 // 两个队列实现栈 public class IMyStackImpl { private MyQue...
2019-05-06 17:12:18
182
原创 栈和队列
1、栈 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 栈的接口 public interface IMyStack { // 将 item 压入栈中 void push(int item); // 返回栈顶元素,并且出栈...
2019-05-06 16:52:24
188
原创 不带头的双向链表
定义接口IDoubleLinked public interface IDoubleLinked { //头插法 void addFirst(int data); //尾插法 void addLast(int data); //任意位置插入,第一个数据节点为0号下标 boolean addIndex(...
2019-04-24 19:06:08
433
原创 带头单链表
定义一个接口ICLinked public interface ICLinked { //头插法 void addFirst(int data); //尾插法 void addLast(int data); //任意位置插入,第一个数据节点为0号下标 boolean addindex(int inde...
2019-04-24 19:00:25
342
原创 测试题
//快乐数 public class TestDemo1 { //判读那各个位上的平方和 //125%10=5 125/10=12 12%10=2 12/10=1 1%10=1 public static int function(int num){ int set=0; while (num!=0){ set=...
2019-04-23 18:29:52
135
原创 无头单链表
链表 概念:链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的 。 首先需要一个接口 public interface ILinked { //头插法 void addFirst(int data); //尾插法 void addLast(int data); //任意位置插入,第一个数据节点为0号下标 ...
2019-04-23 18:28:18
208
原创 java异常与捕获
几乎所有的代码里面都会出现异常,为了保证程序在出响异常之后可以正常执行完毕,就需要进行异常处理。 Java异常体系的类继承结构如下 产生一个异常 public class TestDemo2 { public static void main(String[] args) { System.out.println("1、开始计算"); System.out...
2019-04-14 22:23:13
162
原创 java--设计模式
单利设计模式 所谓的单例设计指的是一个类只允许产生一个实例化对象 单利设计模式分为饿汉式和懒汉式两种。 饿汉式:就是直接创建出类的实例化。 懒汉式:是在需要的时候再创建类的实例化。 饿汉式 优点: 只在类加载的时候创建一次实例,不会存在多个线程创建多个实例的情况,避免了多线程同步的问题。单线程,线程安全。 缺点:很明显,即使这个单例没有用到也会被创建,而且在类加载之后就被创建,内存就被浪费了。 c...
2019-04-14 19:18:30
174
原创 三大特殊类 String类 Object类 包装类
String相关代码 public class TestDemo2 { public static void main(String[] args) { String str = "hellobit";//直接赋值,在常量池中,只放字符串. //其他对象都在堆上。被static所修饰的放在方法区。 String str2 = new Stri...
2019-04-14 15:37:39
276
原创 i am biter 逆置为:biter am i
3、题目:=====i am biter 逆置为:biter am i 函数原型: public static String reverseSentence(String str) { } public class TestDemo3 { public static String reverseSentence(String str){ char[]arr =str.to...
2019-04-13 13:44:46
268
原创 左旋数组
4、将一个数组从左开始第几位之前的进行旋转:左旋数组 如:将"abcdef"第2位之前(a为0号位置)进行旋转----》“cdefab” 函数原型: public static void leftRotateString(String str,int n){ } public class TestDemo1 { public static void leftRotateString(Str...
2019-04-13 13:36:03
522
原创 统计字符串中数字个数
2、统计字符串中数字个数 //如:“abc21b416u” ===> 输出5 函数原型: public static int isNumeric(String str){ } public class TestDemo3 { public static void main(String[] args) { String str ="abc21b416u"; ...
2019-04-13 09:08:04
1911
原创 字符串转化(压缩)
1、字符串转化(压缩) “aabbccdaa” -> “a2b2c2d1a2” 函数原型: public static String stringCompress(String str) { } public class TestDemo3 { public static String stringCompress(String str) { StringBuilder...
2019-04-13 09:06:33
563
原创 接口 工厂设计模式 代理设计模式
接口 接口就是抽象方法和全局常量的集合。 1、定义接口使用关键字interface 接口名称使用I表示 2、接口中的数据成员默认为 public static final 接口中的方法默认为 Public abstract 3、接口内不能有已经实现的方法。 4、接口不能实例化 IMessage imessage = new IMessage(); 5、接口可以继承多个接口,此时的接口拥...
2019-04-12 17:44:40
250
原创 抽象类 模板设计模式
抽象类 包含抽象方法的类 abstract 修饰 1、抽像类不可以被实例化 Person p = new Person(“bit”,10); 2、如果一个非抽象类继承了抽象类,必须要重写抽象类的抽像方法 3、如果是抽象类继承了抽象类,那么作为派生类的抽象类可以不实现基类的方法 4、Private abstract 不能同时出现 final :方法不能用 类也不能用 5、Publi...
2019-04-09 00:08:50
420
原创 java面向对象总结
面向对象 类与对象 类就是指共性的概念,对象指的是一个实体 用类调用就是类(模板) 用对象调用就是对象(实体) 类是产生对象的蓝图 类的产生:(基本语句) class 类名称{ 属性; 方法; } 类的设计原则:编写时必须使用private封装,外部要访问属性,必须要用get和set方法。 对象的产生:(基本语句) 类名称 对象名称 = new 类名称 (); 对...
2019-04-08 18:10:05
137
原创 java数组的总结
数组 数组指的就是一组相关类型的变量集合,并且这些变量可以按照统一的方式进行操作。 数组的动态初始化 数据类型 [ ] 数组名称 = new 数据类型[长度]; //int [] array = new int {10}; 默认值为0; 数组的静态初始化 数据类型 [ ] 数组名称 ={值,值…} //int[] array = {1,2,3,4,5}; 在java中有一种动态取得数组长度的...
2019-04-08 16:25:05
270
原创 改变、努力、成功
我是一名应届大学生,如今已经大三了,这一晃就把自己的大学时光浪费了好多。身边的朋友都确定了自己的目标,至于我,就像一只迷失方向的羚羊,不知道何去何从。 **改变** 在开始的几周,我开始思索,我以后到底要活成什么样子,是安于现状,以后碌碌无为;还是给自己闯出一...
2019-04-04 18:09:47
168
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅