
java笔记
lpq1201
这个作者很懒,什么都没留下…
展开
-
欢迎使用优快云-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2017-05-11 15:12:19 · 155 阅读 · 0 评论 -
字符串基础总结
字符串 字符串就是多个字符组成的一串数据,也可以看成是一个字符数组。同时字符串是常量,一旦被赋值就不可以被改变。 字符串的方法 1.空构造public String(){}eg:String s1=new String();System.out.println(s1);//直接调用对象名称,其本质是调用了对象的toString方法(对toString进行了重写)2.把字节数组转换...原创 2018-05-20 14:41:25 · 153 阅读 · 0 评论 -
详解TCP三次握手四次挥手面试题
TCP(Transmission Control Protocol)传输控制协议。是面向连接的、全双工的协议。主要用来传输TCP报文的。而传输需要客户端client与服务器Server建立连接来完成(三次握手)。传输完成后需要释放链接(四次挥手) 建立连接—三次握手: 第一次握手:首先客户A主动打开连接,服务器B被动打开连接,双方都会先创建传输控制块TCP,此时客户A和服务器B都处于CLO...原创 2018-05-21 15:45:49 · 716 阅读 · 0 评论 -
equals()和“==”的用法与区别
首先来看equals方法的源码:public boolean equals(Object obj){ return this(Object==obj);}从源码可以看出equals和“==”运算符一样比较的是两个对象的引用(地址值)是否一样。equals方法和toString方法一样都是Object超类的方法。对于Object对象,equals方法比较得是对象的地址是否一样,但为...原创 2018-05-16 08:59:29 · 528 阅读 · 0 评论 -
static关键字解析
初识static是在刚学Java时,一个main方法的中是这样定义的:public static static void main(String[]args){ System.out.println("Hello World!");}随着一句“Hello World!”进入了Java的世界。同时也在想“static”是什么鬼?当时知道应该是静态的意思。也并没有在意,但随着最近...原创 2018-05-23 20:29:53 · 304 阅读 · 0 评论 -
几种经典的排序算法
1.冒泡排序 时间复杂度:O(n²) 冒泡排序算法的运作如下:(从后往前) 1)比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2)对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 3)针对所有的元素重复以上的步骤,除了最后一个。 4)持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需...原创 2018-05-31 15:37:57 · 20662 阅读 · 1 评论 -
JVM调优
1. 年轻代大小选择 (1) 响应时间优先的应用:尽可能设大,直到接近系统的最低响应时间限制(根据实际情况选择)。在此种情况下,年轻代收集发生的频率也是最小的。同时,减少到达年老代的对象。 (2)吞吐量优先的应用:尽可能的设置大,可能到达Gbit的程度。因为对响应时间没有要求,垃圾收集可以并行进行,一般适合8CPU以上的应用。 2.年老代大小选择 ...转载 2018-06-16 10:38:17 · 142 阅读 · 0 评论 -
HashMap实现原理分析(存储实现)
HashMap实现原理分析转载 2018-07-02 20:19:39 · 268 阅读 · 0 评论 -
抽象类、接口及其区别?
(1)抽象类: 1)含有抽象方法的类一定是抽象类,抽象类和抽象方法用abstract修饰 2)抽象类中既可以有抽象方法也可以有非抽象方法 3)子类中实现抽象类的抽象方法时抽象方法必须全部实现 4)抽象类中的成员函数修饰符可以是private、protect、public 5)抽象类中可以包含构造方法,子类实现抽象类的构造方法时必须用super()来实现 6)抽象类不能实例化,但可以在抽...原创 2018-08-09 15:09:45 · 165 阅读 · 0 评论 -
设计模式--模板模式
模板模式:模板模式指的是定义一个算法骨架,将算法的实现延迟到子类中实现。 通俗理解:就是把一个业务流程中不变的功能写固定,只把变化不确定的那部分功能在骨架方法中抽象,并在继承我们的骨架,并实现在骨架类中的抽象方法。例如去银行办理业务,要经过3个流程:取号—–>办卡/存钱/取钱—–>对银行柜员进行评价,对于取号和评价来说在流程中时固定的,其中从取号到评价这个过程就是我们的骨架方法,办卡...原创 2018-08-09 15:10:28 · 112 阅读 · 0 评论 -
http与https的区别?
http是长文本传输协议,采用的是明文的传输形式,对传输数据不加密,主要应用于web浏览器与网站服务器之间的信息传输,安全性没有保障,所以不适合支付、密码等信息的传输。https是就ssl协议的安全套接字超文本传输协议,有网景公司开发,在http协议的基础上加入了SSL协议,对客户端与服务器之间的数据传输进行加密,主要作用是:传输加密和身份认证。 区别: (1)http是明文传输,安全性低,h...原创 2018-08-09 15:10:56 · 184 阅读 · 0 评论 -
线程池有这一篇就够了
1.线程池ThreadPoolExecutor 线程池主要就是Executor接口,这个接口提供一些对于线程的操作的配置和方法,能对线程的性能带来较大提升。 线程池得好处: (1)降低了线程的创建和销毁的时间消耗,能够提升线程对系统资源的利用率,同时线程执行完后并不是直接销毁,而是回到线程池等待执行其他任务,这样提高了线程的复用率。 (2)对线程时可控的。相比于传统的多线程每个任务分配一个...原创 2018-08-06 20:22:52 · 379 阅读 · 0 评论 -
数据库事务及隔离级别
1数据库四大特性: 数据库具有事务安全性,同时也具有ACID四大特性:原子性、一致性、隔离性、持久性 ⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。 ⑵ 一致性(Consistency) 一致性是指事务必...原创 2018-08-16 20:58:06 · 190 阅读 · 0 评论 -
数据库事务及隔离级别
1数据库四大特性: 数据库具有事务安全性,同时也具有ACID四大特性:原子性、一致性、隔离性、持久性 ⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。 ⑵ 一致性(Consistency) 一致性是指事务必...原创 2018-08-16 20:58:11 · 184 阅读 · 0 评论 -
几个面试题总结
1.session和cookie的区别 (1)cookie存放在客户端的浏览器上,session则存放在服务器中 (2)Cookie是不安全的,别人可以通过分析本地的cookie进行cookie欺骗,考虑安全性的话应使用session (3)Session保存在服务器上的时间是有限制的,当服务器的session较多时,会给服务器造成很大压力,考虑减轻服务器压力可以使用cookie (4)C...原创 2018-08-26 16:36:29 · 263 阅读 · 0 评论 -
单例模式之饿汉式、懒汉式、双重校验
1.饿汉式ublic class singleton { //饿汉式 private static singleton instance=new singleton(); private singleton(){} public static singleton getInstance(){ return instance; }}...原创 2018-08-23 12:48:53 · 920 阅读 · 2 评论 -
IDEA安装与破解
IEEA的安装与破解借鉴别人总结的(很全面)转载 2018-05-13 15:46:35 · 236 阅读 · 0 评论 -
关于No Spring WebApplicationInitializer types detected on classpath的提示
在使用maven启动tomocat时出现的提示,然后启动到一半再也不走,提示五月 17, 2017 11:45:41 上午 org.apache.catalina.core.StandardEngine startInternal 信息: Starting Servlet Engine: Apache Tomcat/7.0.47 五月 17, 2017 11:45:46 上午 org.ap...转载 2018-05-19 13:23:47 · 2860 阅读 · 0 评论 -
JAVA-TreeSet集合
Set集合: set接口是Collection的子接口,set接口中容器的元素是没有顺序的,并且不可以重复。 set集合下有HashSet和TreeSet两个子接口,HashSet的数据结构是哈希表,线程是非同步的,里面的元素必须是不同的,从而保证了元素的唯一性。 唯一性原理:java虚拟机首先会判断集合中的hashCode是否相同,如果相同,继续判断元素的equals方法,当equa原创 2017-05-30 12:45:08 · 302 阅读 · 0 评论 -
JAVA-TreeSet集合
代码实现:package cn.lpq.WhtchVedeo;import java.util.Collection;import java.util.Iterator;import java.util.TreeSet;public class TestTreeSet { public static void main(String[]args){ Collection原创 2017-05-30 12:53:08 · 259 阅读 · 0 评论 -
JAVA-OutputStreamWriter()和InputStreamReader()
OutputStreamWriter 写作操作:public class lpq01{public static void main(String[]args){try{ OutputStreamWriter osw=new OutputStreamWriter(new FileOutputStream("F:/编程类软件/JAVA-mycode/workspace/qq.txt"));原创 2017-06-04 18:07:45 · 267 阅读 · 0 评论 -
JAVA-二分法查找算法总结
二分查找算法: 二分查找算法也叫折半查找算法。 优点:1.比较次数少 2.查找速度快 3.平均性能好 缺点:1.待查表需要是有序的 2.插入、删除困难 算法原理: 假设对于一个按序排列的列表a,需要查找的键值为:key,数组列表中间那个元素对应的索引为:mid 初始化该列表起始元素的索引:low,最后一个元素的位置索引为:high=a.length原创 2017-05-22 13:12:01 · 597 阅读 · 0 评论 -
JAVA-读写文件
字节流读文件(FileInputStream):public class lpq01{ public static void main(String[]args){ FileInputStream fis=null; int a=0; try{ fis=new FileInputStream(""F:\\编程类软件\\JAVA-原创 2017-06-04 14:35:15 · 236 阅读 · 0 评论 -
JAVA-按行读写文件
带缓冲的读写文件 BufferedReader(); BufferedWriter(); 随机读取0-100的数,写输入文件并读取文件: 代码如下:import java.io.*;public class lpq03{ public static void main(String[]args){ try{ BufferedWrite原创 2017-06-04 16:32:26 · 1130 阅读 · 0 评论 -
java中窗口的打开与关闭
作为小白的我,今天学习了java中打开与关闭窗口的方法。 1.在java中创建一个窗口import java.awt.*;import java.awt.event.*;public class LpqClient extends frame{ public void LaunchFrame(){ this.setLocation(300,400); this.setSi原创 2017-09-18 15:19:07 · 21820 阅读 · 1 评论 -
马士兵坦克大战
创建窗口并关闭窗口,并改变窗口背景颜色和在窗口中画出实心圆import java.awt.*;import java.awt.event.*;/** * 产生一个窗口 * @author Administrator * */public class TankClinent extends Frame{ @Override//重写print方法,画图 public voi原创 2017-09-18 15:45:03 · 2525 阅读 · 0 评论 -
JAVA-多线程
创建并运行线程方法: 1.通过实现(implements)Runnable实现线程public class axlpq{ public static void main(String[]args){ Runner1 r=new Runner1(); Thread t=new Thread(r); t.start(); for(int i=0;i<100;i+原创 2017-09-21 15:00:37 · 215 阅读 · 0 评论 -
JAVA中解决双缓冲现象
代码如下:import java.awt.*;import java.awt.event.*;public class TankClient extends Frame{ int x=50; int y=50; Image offScreenImage=null; public void paint(Graphics g){ Color c=g.g原创 2017-11-09 10:53:44 · 746 阅读 · 0 评论 -
Java研发面试问题集锦
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.youkuaiyun.com/pistolove/article/details/46753275前言 打算换个工作,近一个月面试了不少的公司,下面将一些面试经验和思考分享给大家。另外校招也快要开始了,为在校的学生提供一些经验供参考,希望都能找到满意的工作。 刚开始面试的几家公司,就是备受各种打击、就是一顿狂问,结果答上来...转载 2018-04-16 21:54:04 · 912 阅读 · 0 评论 -
23中JAVA设计模式总结
1.单例模式(Singleton Pattern) 定义:Ensure a class has only one instance, and provide a global point of access to it.(确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。) 通用代码:(是线程安全的) 复制代码public class Singleton { ...转载 2018-04-18 11:32:55 · 162 阅读 · 0 评论 -
数据结构之动态数组
package cn.Arrays.lpq;public class Array1 { private int [] data; private int size; //有参构造,确定数组容量为capacity public Array1(int capacity){ data=new int[capacity]; s...原创 2018-04-18 21:46:52 · 296 阅读 · 0 评论 -
String StringBuffer StringBuilder之间的区别
最近在学习Java的时候,遇到了这样一个问题,就是String,StringBuilder以及StringBuffer这三个类之间有什么区别呢,自己从网上搜索了一些资料,有所了解了之后在这里整理一下,便于大家观看,也便于加深自己学习过程中对这些知识点的记忆,如果哪里有误,恳请指正。 这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。首先说运行速度,或者说是执行速度,在这...转载 2018-04-19 09:21:49 · 114 阅读 · 0 评论 -
故事Java数据结构之数组背后的故
package cn.Arrays.lpq; /** * 在数组中添加元素 * 1.在末尾位置添加元素 * 2.在数组元素中任意位置添加元素 * @author Administrator * */ public class Array1 { private E [] data; private int size; //有参构造,确定数组...原创 2018-04-20 09:49:27 · 141 阅读 · 0 评论 -
判断一棵二叉树是否为完全二叉树
判断一棵二叉树是否为完全二叉树–采用广度优先遍历–利用队列 * 1。定义标志位flag=false表示没有遇到空的节点,count=0 * 2.只要树中节点的左右子树都不为空,那么就把该节点的所有左右孩子压入队列(包括null节点) * 压入队列3种情况: * (1)节点都有左右子节点—都压入 * (2)节点有一个左子节点右子节点为空或者节点有一个...原创 2018-08-21 17:31:44 · 1748 阅读 · 0 评论