<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[a810373329的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/a810373329</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; a810373329]]></copyright><item><title><![CDATA[3D数学--矢量]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/135159802</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/135159802</guid><author>a810373329</author><pubDate>Fri, 22 Dec 2023 21:30:35 +0800</pubDate><description><![CDATA[矢量是具有大小和方向的有向线段。]]></description><category></category></item><item><title><![CDATA[Unity学习（二）用户输入（键盘、鼠标、轴）]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/102890533</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/102890533</guid><author>a810373329</author><pubDate>Mon, 04 Nov 2019 09:05:05 +0800</pubDate><description><![CDATA[按键操作:
1.Input.GetKey(KeyCode keyCode):一直按着,一直返回true;
2.Input.GetKeyDown:按键按下时,返回true
3.Input.GetKeyUp:按键抬起时,返回true
鼠标:
1.Input.GetMouseButton(0)//0,1,2分别对应左右中
2.Input.GetMouseButtonDown()
3.Input.G...]]></description><category></category></item><item><title><![CDATA[Unity学习（一）MonoBehaviour类各函数生命周期]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/102890425</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/102890425</guid><author>a810373329</author><pubDate>Mon, 04 Nov 2019 08:57:41 +0800</pubDate><description><![CDATA[主要函数简介：

Awake:脚本实例被载入(将脚本附加给游戏物体(激活))时调用,只调用一次;
Start:脚本实例被启用时(脚本前面的勾选上时)调用,只调用一次;
OnEnable:当对象变为可用(enabled = true)或激活状态(activeSelf = true)时此函数被调用;(反复启用反复调用)
OnDisable:当对象变为不可用或非激活状态时此函数被调用。...]]></description><category></category></item><item><title><![CDATA[LinkMap (链式映射)]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/100514964</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/100514964</guid><author>a810373329</author><pubDate>Tue, 03 Sep 2019 13:01:52 +0800</pubDate><description><![CDATA[链式映射及其特殊访问和内置迭代器实现
]]></description><category></category></item><item><title><![CDATA[LinkList (双向链表C++的实现，含内置迭代器的实现)]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/100508502</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/100508502</guid><author>a810373329</author><pubDate>Tue, 03 Sep 2019 10:10:56 +0800</pubDate><description><![CDATA[LinkNode（链表节点）：


#pragma once
#include"Comparetor.h"
/*
*双向链表（模板类实现）
*作者：问月晚安
*时间：19-8-15
*/
/*定义链表节点*/
template&lt;typename T&gt;
struct ListNode{
 ListNode* next; //后继节点
 ListNode* prev;...]]></description><category></category></item><item><title><![CDATA[JS中的Ajax技术]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/86481569</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/86481569</guid><author>a810373329</author><pubDate>Mon, 14 Jan 2019 18:08:45 +0800</pubDate><description><![CDATA[
Ajax：是一种在无需重新加载整个网页的情况下，能够更新部分网页的技术。通过在后台与服务器进行少量数据交换，Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下，对网页的某部分进行更新。



/*
* 不同的浏览器可能实现XMLHttpRequest的方式不同。
* 所以需要指明浏览器的版本属性，不过现在的jsAPI都帮你做好了这一部分工作。
* */
XMLHttpReq...]]></description><category></category></item><item><title><![CDATA[Java设计模式之桥接设计模式]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/85108517</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/85108517</guid><author>a810373329</author><pubDate>Mon, 14 Jan 2019 17:58:44 +0800</pubDate><description><![CDATA[
桥接模式，是构造型的设计模式之一。桥接模式是基于类的最小设计原则。通过使用封装，聚合以及继承等行为来让不同的类承担不同的责任。它的主要特点是把抽象与行为实现分离开来，从而可以保持各部分的独立性以及应对它们的功能扩展。





Client：Bridge模式的使用者
	Abstraction：抽象类接口（接口或抽象类）维护对行为实现（Implementor）的引用
	Refined Abstra...]]></description><category></category></item><item><title><![CDATA[Java设计模式之原型模式]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/86147329</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/86147329</guid><author>a810373329</author><pubDate>Wed, 09 Jan 2019 13:34:56 +0800</pubDate><description><![CDATA[原型模式介绍

Prototype模式（原型模式）是一种对象创建型模式，它采取复制原型对象的方法来创建对象的实例。使用Prototype模式创建的实例，具有与原型一样的数据。

由原型对象自身创建的目标对象。对象创建这一动作来源于原型对象本身。
目标对象是原型对象的一个克隆。通过Prototype模式创建的对象，不仅仅与原型对象具有相同的结构，还与原型对象具有相同的值。
根据对象克隆深度层次的不同...]]></description><category></category></item><item><title><![CDATA[Java网络编程]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84928876</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84928876</guid><author>a810373329</author><pubDate>Sun, 06 Jan 2019 18:52:58 +0800</pubDate><description><![CDATA[InetAddress类


InetAddress类是IP地址封装类，该类并没有公共的构造方法，但是我们可以通过该类的一些静态方法来获取对象实例，然后再通过这些对象实例来对IP地址或主机名进行操作。



//InetAddress.getByName(主机名):根据主机名创建InetAddress对象
InetAddress address=InetAddress.getByName(&quot;www...]]></description><category></category></item><item><title><![CDATA[Java设计模式之建造者模式]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/85230807</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/85230807</guid><author>a810373329</author><pubDate>Mon, 24 Dec 2018 11:43:00 +0800</pubDate><description><![CDATA[
Builder模式是一种对象创建型模式之一，用来隐藏复合对象的创建过程，它把复合对象的创建过程加以抽象，通过子类继承和重载的方式，动态地创建具有复合属性的对象。


 


Dircector：设计者类。该类的作用是指挥建造者对象动态的建造产品。
	Builder：建造者类。执行真正的建造工作。
	ConcreteBuilder：具体建造者类。包含具体的工作细节。
	Product：产品类。通过...]]></description><category></category></item><item><title><![CDATA[Java设计模式之观察者模式]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84928901</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84928901</guid><author>a810373329</author><pubDate>Mon, 24 Dec 2018 11:18:55 +0800</pubDate><description><![CDATA[
观察者模式是行为模式之一，它的作用是当一个对象的状态发生变化时，能够自动通知其他关联对象，自动刷新对象状态。


 


Subject（被观察者） 被观察的对象。当需要被观察的状态发生变化时，需要通知队列中所有观察者对象。Subject需要维持（添加，删除，通知）一个观察者对象的队列列表。
	ConcreteSubject 被观察者的具体实现。包含一些基本的属性状态及其他操作。
	Observ...]]></description><category></category></item><item><title><![CDATA[Java类型信息、反射与动态代理]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84928960</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84928960</guid><author>a810373329</author><pubDate>Thu, 20 Dec 2018 20:37:48 +0800</pubDate><description><![CDATA[类型信息




一个类的类型信息（class信息，静态域、静态方法和各种字面量常量）在被类加载机制加载进Java虚拟机后存储在方法区中，平常我们通过类实例化的引用对类信息进行访问，这实际上是对方法区中类型信息的间接访问。


Exampleone one = new Exampleone();

这段代码会在栈中创建Exampleone对象的引用one并指向堆中的Exampleone对象实例信息...]]></description><category></category></item><item><title><![CDATA[Java集合框架总结]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84928859</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84928859</guid><author>a810373329</author><pubDate>Sun, 16 Dec 2018 19:42:14 +0800</pubDate><description><![CDATA[《Java编程思想》集合框架简化图：

 


Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。

集合接口：6个接口（短虚线表示），表示不同集合类型，是集合框架的基础。
	抽象类：5个抽象类（长虚线表示），对集合接口的部分实现。可扩展为自定义集合类。
	实现类：8个实现类（实线表示），对接口的具体实现。


 《Java编程思想》...]]></description><category></category></item><item><title><![CDATA[Java实用文件操作]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/85014111</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/85014111</guid><author>a810373329</author><pubDate>Sat, 15 Dec 2018 16:12:04 +0800</pubDate><description><![CDATA[ 

文件过滤器接口FileFilter


/*
* FileFilter只有一个抽象方法，
* 是一个函数式接口，可以使用lambda表达式。
* 该方法会过滤掉file目录中不包含we(不区分大小写)的文件和文件夹
* */
File[] files = file.listFiles(
p-&amp;gt;{
     return p.getName().toUpperCase().contain...]]></description><category></category></item><item><title><![CDATA[Java克隆与对象序列化]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/85012960</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/85012960</guid><author>a810373329</author><pubDate>Sat, 15 Dec 2018 14:06:46 +0800</pubDate><description><![CDATA[Object类的clone()方法

浅克隆


//浅克隆
/*
* 1.Object类中的clone()方法为protected的
* 2.需要实现克隆功能的类必须实现Cloneable接口
* */
class Kid{
    public int age = 10;
}
class Person implements Cloneable{

    public int age = 10...]]></description><category></category></item><item><title><![CDATA[Java I/O流典型使用案例]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84928970</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84928970</guid><author>a810373329</author><pubDate>Fri, 14 Dec 2018 19:00:00 +0800</pubDate><description><![CDATA[管道流（多线程程序）


/*
* 创建数据输出线程
* */
class ThreadOut extends Thread{
    private PipedInputStream in;
    private PipedOutputStream out;
    public ThreadOut(PipedInputStream in,PipedOutputStream out){
   ...]]></description><category></category></item><item><title><![CDATA[利用WatchService实现文件监视]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84995346</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84995346</guid><author>a810373329</author><pubDate>Thu, 13 Dec 2018 22:27:08 +0800</pubDate><description><![CDATA[Java.nio.file WatchService类图




FileSystem：当前系统默认的文件系统。
	WatchService：文件系统监视服务的接口类，它的具体实现由监视服务提供者负责加载（不同的操作系统实现不同的加载类，如windows的WindowsWatchService类）。
	Watchable：实现了Watchable接口的对象才能注册监视服务WatchService，...]]></description><category></category></item><item><title><![CDATA[重新抛出异常与异常链]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84957405</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84957405</guid><author>a810373329</author><pubDate>Tue, 11 Dec 2018 17:17:13 +0800</pubDate><description><![CDATA[重新抛出异常


如果我们直接重新抛出异常，那么当我们后续捕获此异常时并不会产生重新抛出地的信息。但是当我们需要重新抛出一个异常时我们显然希望能获得重新抛出点的信息，这时我们需要使用fillInStackTrace()方法，它通过把当前异常调用栈信息填入原来的异常对象而返回一个Throwable，所以我们需要将它强制转型为Exception再将其抛出。



import java.io.*;
c...]]></description><category></category></item><item><title><![CDATA[Java设计模式之适配器模式]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84928828</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84928828</guid><author>a810373329</author><pubDate>Tue, 11 Dec 2018 16:11:33 +0800</pubDate><description><![CDATA[
适配器模式使那些原本由于接口不兼容而不能一起工作的类可以一起工作。


 


 这里我们举一个例子说明适配器设计模式。

上面的类图中，我定义了两个接口，一个BigPlants接口一个SmartPlants接口，他们都有一个浇水的方法（Watering()）。编写Tree类并实现BigPlants接口，而在我们使用SmartPlants接口的时候我们不想单独实现浇水方法，我们想直接使用BigP...]]></description><category></category></item><item><title><![CDATA[Java异常处理机制]]></title><link>https://blog.youkuaiyun.com/a810373329/article/details/84928837</link><guid>https://blog.youkuaiyun.com/a810373329/article/details/84928837</guid><author>a810373329</author><pubDate>Mon, 10 Dec 2018 19:15:24 +0800</pubDate><description><![CDATA[
Java中的异常类都派生自Throwable类，所以发生异常时将产生一个异常对象并将其抛出。这与其他对象的创建一样，使用new在堆上创建异常对象。然后，当前的执行路径被迫终止，并且从当前执行环境弹出异常对象的引用，这时异常处理机制开始运作，他会寻找一个恰当的地方继续执行程序（当前环境或者上一层环境中定义了异常处理的语句，如果没有我们定义相应的异常处理语句，那么抛出的异常会直达main()方法，并...]]></description><category></category></item></channel></rss>