<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_39026607的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_39026607</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_39026607]]></copyright><item><title><![CDATA[JDK动态代理简单使用]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/121454670</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/121454670</guid><author>qq_39026607</author><pubDate>Sun, 21 Nov 2021 16:00:42 +0800</pubDate><description><![CDATA[1、静态代理的简单使用
/**
 * 厂家、商家都要实现的功能
 */
public interface UsbSell {

    float sell(int amount);

}

/**
 * 厂家1，目标类
 */
public class UsbKingFactory implements UsbSell {
    @Override
    public float sell(int amount) {
        //设置售卖的价格
        return 85.0f;
  ]]></description><category></category></item><item><title><![CDATA[实现一个简单的日历]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105923986</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105923986</guid><author>qq_39026607</author><pubDate>Mon, 04 May 2020 21:40:48 +0800</pubDate><description><![CDATA[package com.csx.h501;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;

/**
 * 日历
 * 
 * @author CSX
 *
 */
public class PerpetualCalenda...]]></description><category></category></item><item><title><![CDATA[JDBC操作步骤，简单的使用]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105920089</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105920089</guid><author>qq_39026607</author><pubDate>Mon, 04 May 2020 18:44:08 +0800</pubDate><description><![CDATA[JDBC基本概念
1、JDBC：Java DataBase Connectivity（Java语言连接数据库）
2、JDBC本质是什么？
JDBC是SUN公司制定的一套接口(interface)
接口都有调用者和实现者。
面向接口调用、面向接口写实现类。这都属于面向接口编程
为什么要面向接口编程？
降低耦合：降低程序的耦合度，提高程序的扩展力。
多态机制就是非常典型的：面向抽象编程
编写JDBC六...]]></description><category></category></item><item><title><![CDATA[mysql驱动下载，并添加到idea中]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105910974</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105910974</guid><author>qq_39026607</author><pubDate>Sun, 03 May 2020 23:55:08 +0800</pubDate><description><![CDATA[mysql驱动下载地址https://mvnrepository.com/artifact/mysql/mysql-connector-java
选择你想要的mysql版本

以5.1.41为例，相应版本选择后，点击jar下载相应的jar包

将jar包导入到idea中







...]]></description><category></category></item><item><title><![CDATA[Lambda表达式]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105907484</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105907484</guid><author>qq_39026607</author><pubDate>Sun, 03 May 2020 19:25:16 +0800</pubDate><description><![CDATA[package thread;
/**
 * Lambda表达式简化线程（用一次）的使用
 * @author DELL
 *
 */
public class LambdaThread {
	//静态内部类
	static class Test implements Runnable{
	@Override
	public void run() {
		for(int i=0;i&lt;20;i...]]></description><category></category></item><item><title><![CDATA[生产者消费者模式：管程法，信号灯法]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105902916</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105902916</guid><author>qq_39026607</author><pubDate>Sun, 03 May 2020 13:59:58 +0800</pubDate><description><![CDATA[管程法
package cooperation;
/**
 * 协作模型：生产者消费者实现方式：管程法
 * 借助缓冲区
 * @author DELL
 *
 */
public class CoTest01 {
	public static void main(String[] args) {
		SynContainer container=new SynContainer();//缓冲区
...]]></description><category></category></item><item><title><![CDATA[Map：HashMap，HashTable，TreeMap简单的底层理解，及为什么set中的对象是不能重复的。]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105769432</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105769432</guid><author>qq_39026607</author><pubDate>Sun, 26 Apr 2020 15:15:32 +0800</pubDate><description><![CDATA[HashMap
HashMap底层实现采用了哈希表，这是一种非常重要的数据结构
哈希表的基本结构就是**“数组+链表”**，结合了数组和链表的优点，即查询，增删都快。
HashMap“数组+链表”的结构示意图

HashMap存储键值对过程的示意图

取value对象的过程与存入相同，当根据hash值到达Entry数组对应的索引位置后，会调用equals()方法，与Entry节点中的每一个key对...]]></description><category></category></item><item><title><![CDATA[IO操作、输入输出流]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105659746</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105659746</guid><author>qq_39026607</author><pubDate>Tue, 21 Apr 2020 22:46:09 +0800</pubDate><description><![CDATA[xxxx

]]></description><category></category></item><item><title><![CDATA[反射：获取成员变量，构造方法，类的使用。]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105647267</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105647267</guid><author>qq_39026607</author><pubDate>Mon, 20 Apr 2020 23:24:32 +0800</pubDate><description><![CDATA[反射：将类的各个组成部分封装为其他对象。

好处：
1、可以在运行过程中，操作这些对象
2、可以解耦，提高程序的可扩展性

要对反射有一个比较深刻的理解，首先要了解Java代码在计算机中经历的三个阶段

一、获取Class对象的三种方式
1、Class.forName(“包名.类名”)：
    将字节码文件加载进内存，返回Class对象（编译阶段）
2、类名.class：
    通过类名的属性...]]></description><category></category></item><item><title><![CDATA[反射的一个简单用法示例]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105647133</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105647133</guid><author>qq_39026607</author><pubDate>Mon, 20 Apr 2020 22:57:16 +0800</pubDate><description><![CDATA[下面例子通过反射实现。如果想要实现类中的方法，不需要去修改源代码，只需要修改配置文件中的内容即可。​
1、使用之前创建的实体对象
2、创建一个配置文件，这里用pro.properties
#需要加载类的全限定类名
className = com.csx.bean.Person 
#需要调用的类中的方法
methodName = sleep

3、创建一个测试文件
public class Refl...]]></description><category></category></item><item><title><![CDATA[List接口及三个常用实现类ArrayList、LinkedList和Vector]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105620381</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105620381</guid><author>qq_39026607</author><pubDate>Sun, 19 Apr 2020 19:43:40 +0800</pubDate><description><![CDATA[List
List是有序、可重复的容器
有序：List中每个元素都有索引标记。可以根据元素的索引标记（在List中的位置）访问元素，从而精确控制这些元素
可重复：List允许加入重复的元素、List通常允许满足e1.equals(e2)的元素重复加入容器
ArrayList
ArrayList底层是用数组实现的。特点：查询效率高，增删效率低，线程不安全。但一般使用它
数组长度是有限的，而Array...]]></description><category></category></item><item><title><![CDATA[static关键字、如何调用非静态方法、同一个成员变量有无satatic区别]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105588684</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105588684</guid><author>qq_39026607</author><pubDate>Fri, 17 Apr 2020 21:36:35 +0800</pubDate><description><![CDATA[1、static可以修饰成员变量、成员方法、代码块、相应数据和代码保存在静态数据区
2、static修饰的成员变量，方法，内部类，初始化代码都属于类，没有static修饰的属于实例
3、static修饰的成员变量和成员方法可以通过类名.成员访问

在java中必须实例化对象去调用非静态方法的。
静态方法跟非静态方法主要的区别在于生命周期。
静态方法的生命周期从进程被创建就开始了，直到进程结束，所...]]></description><category></category></item><item><title><![CDATA[自定义异常、异常链]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105569035</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105569035</guid><author>qq_39026607</author><pubDate>Fri, 17 Apr 2020 20:57:31 +0800</pubDate><description><![CDATA[自定义异常：
//一个简单的自定义异常类
public class CustomException extends Exception{ //需要继承比自己大的一个异常类
	public CustomException(){
		
	}
	
	public CustomException(String message) {
		super(message);
	}
	
}

异常链：
//异常链
...]]></description><category></category></item><item><title><![CDATA[Java内存机制，以及简单的值传递]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105545314</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105545314</guid><author>qq_39026607</author><pubDate>Wed, 15 Apr 2020 21:51:31 +0800</pubDate><description><![CDATA[一张图简单的演示一下Java内存机制

基本数据类型：作为参数传递时，传递的是数据的值
引用类型：作为参数传递的时候，传递的是引用对象的地址
String类型，
当使用“”为String类型赋值，并作为参数传递，传递的是数据的值
当使用new String的方式为String赋值时，作为参数穿度，传递的是引用对象的地址

...]]></description><category></category></item><item><title><![CDATA[Switch中的表达式能使用的数据类型]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105420957</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105420957</guid><author>qq_39026607</author><pubDate>Thu, 09 Apr 2020 21:47:16 +0800</pubDate><description><![CDATA[Java5以前switch(expression)中，expression只能是byte、short、char、int，严格意义上来讲Java5以前只支持int，之所以能使用byte short char是因为存在自动类型转换。从 Java 5 开始，Java中引入了枚举类型，expression也可以是 enum 类型。从 Java 7 开始，expression还可以是字符串（String），...]]></description><category></category></item><item><title><![CDATA[基本数据类型及类型转换的使用]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105388268</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105388268</guid><author>qq_39026607</author><pubDate>Wed, 08 Apr 2020 17:32:08 +0800</pubDate><description><![CDATA[Java是强类型诧言，任何一个变量戒常量在Java中必须有确定的数据类型，
Java的数据类型有两种，即基本数据类型和引用类型
这里主要介绍基本数据类型，以及使用中常见的类型转换的问题
基本数据类型

每种类型的范围，默认值




类型
长度（位）
长度（字节）
默认值
表示范围




byte
8
1
0
-128～127（-27~27-1）


short
16
2
0
-32768～32...]]></description><category></category></item><item><title><![CDATA[JVM，JDK和JRE的关系]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/105375100</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/105375100</guid><author>qq_39026607</author><pubDate>Tue, 07 Apr 2020 22:10:07 +0800</pubDate><description><![CDATA[JVM，JDK和JRE的关系
小编今天终于将JVM，JDK和JRE的关系理清楚了
JDK是Java开发工具包（ Java Development Kit）的简称
JRE是Java运行环境（ Java Runtime Environment）的简称
JDK中的文件夹：
bin：可以看成一个虚拟机，相当于JVM
lib：虚拟机的一个类库（JVM需要的类库）
bin+lib：相当于jre
电脑上只要有J...]]></description><category></category></item><item><title><![CDATA[systemctl start docker无法启动docker]]></title><link>https://blog.youkuaiyun.com/qq_39026607/article/details/104934372</link><guid>https://blog.youkuaiyun.com/qq_39026607/article/details/104934372</guid><author>qq_39026607</author><pubDate>Tue, 17 Mar 2020 23:35:40 +0800</pubDate><description><![CDATA[晚上装docker的过程中出现的问题，参考http://www.eussi.top/view/20
用systemctl start docker命令
启动docker的过程中报错
Job for docker.service failed because the control process exited with error code. See "systemctl status docke...]]></description><category></category></item></channel></rss>