自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 3D数学--矢量

矢量是具有大小和方向的有向线段。

2023-12-22 21:30:35 428

原创 Unity学习(二)用户输入(键盘、鼠标、轴)

按键操作:1.Input.GetKey(KeyCode keyCode):一直按着,一直返回true;2.Input.GetKeyDown:按键按下时,返回true3.Input.GetKeyUp:按键抬起时,返回true鼠标:1.Input.GetMouseButton(0)//0,1,2分别对应左右中2.Input.GetMouseButtonDown()3.Input.G...

2019-11-04 09:05:05 992

原创 Unity学习(一)MonoBehaviour类各函数生命周期

主要函数简介:Awake:脚本实例被载入(将脚本附加给游戏物体(激活))时调用,只调用一次;Start:脚本实例被启用时(脚本前面的勾选上时)调用,只调用一次;OnEnable:当对象变为可用(enabled = true)或激活状态(activeSelf = true)时此函数被调用;(反复启用反复调用)OnDisable:当对象变为不可用或非激活状态时此函数被调用。...

2019-11-04 08:57:41 498

原创 LinkMap (链式映射)

链式映射及其特殊访问和内置迭代器实现

2019-09-03 13:01:52 2236

原创 LinkList (双向链表C++的实现,含内置迭代器的实现)

LinkNode(链表节点):#pragma once#include"Comparetor.h"/**双向链表(模板类实现)*作者:问月晚安*时间:19-8-15*//*定义链表节点*/template<typename T>struct ListNode{ ListNode* next; //后继节点 ListNode* prev;...

2019-09-03 10:10:56 1088

原创 JS中的Ajax技术

Ajax:是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。/** 不同的浏览器可能实现XMLHttpRequest的方式不同。* 所以需要指明浏览器的版本属性,不过现在的jsAPI都帮你做好了这一部分工作。* */XMLHttpReq...

2019-01-14 18:08:45 2894

原创 Java设计模式之桥接设计模式

桥接模式,是构造型的设计模式之一。桥接模式是基于类的最小设计原则。通过使用封装,聚合以及继承等行为来让不同的类承担不同的责任。它的主要特点是把抽象与行为实现分离开来,从而可以保持各部分的独立性以及应对它们的功能扩展。Client:Bridge模式的使用者 Abstraction:抽象类接口(接口或抽象类)维护对行为实现(Implementor)的引用 Refined Abstra...

2019-01-14 17:58:44 148

原创 Java设计模式之原型模式

原型模式介绍Prototype模式(原型模式)是一种对象创建型模式,它采取复制原型对象的方法来创建对象的实例。使用Prototype模式创建的实例,具有与原型一样的数据。由原型对象自身创建的目标对象。对象创建这一动作来源于原型对象本身。目标对象是原型对象的一个克隆。通过Prototype模式创建的对象,不仅仅与原型对象具有相同的结构,还与原型对象具有相同的值。根据对象克隆深度层次的不同...

2019-01-09 13:34:56 90

原创 Java网络编程

InetAddress类InetAddress类是IP地址封装类,该类并没有公共的构造方法,但是我们可以通过该类的一些静态方法来获取对象实例,然后再通过这些对象实例来对IP地址或主机名进行操作。//InetAddress.getByName(主机名):根据主机名创建InetAddress对象InetAddress address=InetAddress.getByName("www...

2019-01-06 18:52:58 247 2

原创 Java设计模式之建造者模式

Builder模式是一种对象创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。 Dircector:设计者类。该类的作用是指挥建造者对象动态的建造产品。 Builder:建造者类。执行真正的建造工作。 ConcreteBuilder:具体建造者类。包含具体的工作细节。 Product:产品类。通过...

2018-12-24 11:43:00 121

原创 Java设计模式之观察者模式

观察者模式是行为模式之一,它的作用是当一个对象的状态发生变化时,能够自动通知其他关联对象,自动刷新对象状态。 Subject(被观察者) 被观察的对象。当需要被观察的状态发生变化时,需要通知队列中所有观察者对象。Subject需要维持(添加,删除,通知)一个观察者对象的队列列表。 ConcreteSubject 被观察者的具体实现。包含一些基本的属性状态及其他操作。 Observ...

2018-12-24 11:18:55 132

原创 Java类型信息、反射与动态代理

类型信息一个类的类型信息(class信息,静态域、静态方法和各种字面量常量)在被类加载机制加载进Java虚拟机后存储在方法区中,平常我们通过类实例化的引用对类信息进行访问,这实际上是对方法区中类型信息的间接访问。Exampleone one = new Exampleone();这段代码会在栈中创建Exampleone对象的引用one并指向堆中的Exampleone对象实例信息...

2018-12-20 20:37:48 121

原创 Java集合框架总结

《Java编程思想》集合框架简化图: Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。 抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。 实现类:8个实现类(实线表示),对接口的具体实现。 《Java编程思想》...

2018-12-16 19:42:14 109

原创 Java实用文件操作

 文件过滤器接口FileFilter/** FileFilter只有一个抽象方法,* 是一个函数式接口,可以使用lambda表达式。* 该方法会过滤掉file目录中不包含we(不区分大小写)的文件和文件夹* */File[] files = file.listFiles(p-&gt;{ return p.getName().toUpperCase().contain...

2018-12-15 16:12:04 118

原创 Java克隆与对象序列化

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

2018-12-15 14:06:46 230

原创 Java I/O流典型使用案例

管道流(多线程程序)/** 创建数据输出线程* */class ThreadOut extends Thread{ private PipedInputStream in; private PipedOutputStream out; public ThreadOut(PipedInputStream in,PipedOutputStream out){ ...

2018-12-14 19:00:00 299

原创 利用WatchService实现文件监视

Java.nio.file WatchService类图FileSystem:当前系统默认的文件系统。 WatchService:文件系统监视服务的接口类,它的具体实现由监视服务提供者负责加载(不同的操作系统实现不同的加载类,如windows的WindowsWatchService类)。 Watchable:实现了Watchable接口的对象才能注册监视服务WatchService,...

2018-12-13 22:27:08 440

原创 重新抛出异常与异常链

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

2018-12-11 17:17:13 275

原创 Java设计模式之适配器模式

适配器模式使那些原本由于接口不兼容而不能一起工作的类可以一起工作。  这里我们举一个例子说明适配器设计模式。上面的类图中,我定义了两个接口,一个BigPlants接口一个SmartPlants接口,他们都有一个浇水的方法(Watering())。编写Tree类并实现BigPlants接口,而在我们使用SmartPlants接口的时候我们不想单独实现浇水方法,我们想直接使用BigP...

2018-12-11 16:11:33 131

原创 Java异常处理机制

Java中的异常类都派生自Throwable类,所以发生异常时将产生一个异常对象并将其抛出。这与其他对象的创建一样,使用new在堆上创建异常对象。然后,当前的执行路径被迫终止,并且从当前执行环境弹出异常对象的引用,这时异常处理机制开始运作,他会寻找一个恰当的地方继续执行程序(当前环境或者上一层环境中定义了异常处理的语句,如果没有我们定义相应的异常处理语句,那么抛出的异常会直达main()方法,并...

2018-12-10 19:15:24 185

原创 Java Web 目录结构介绍

Web 程序部署在Tomcat的/webapps下面。一个webapps文件夹可以部署多个不同的Web应用。 其中的每一个文件都代表一个Web应用程序,如:fristweb,examples等。一个Web应用也被称为一个Context,路径/fristweb被称为ContextPath(上下文路径)。文件夹 描述 / Web应用程序根目录 /WEB-INF/ ...

2018-12-10 16:00:57 2678

原创 Java I/O流介绍

Java I/O流分为输入流输出流两大部分,任何自InputStream(字节输入流)和Reader(字符输入流)派生而来的类都含有read()基本方法,用来读取单个字节或一组字节数组。任何自OutputStream(字节输出流)和Writer(字符输出流)派生而来的类都含有writer()基本方法,用来写单个字节或一组字节数组。 字节输入输出流字节输入流系列:PipedInp...

2018-12-09 20:42:03 109

原创 JDBC连接数据库

在Windows操作系统中,Java语言利用JDBC连接数据库有两种办法。一种是直接通过JDBC和数据库官方提供的支持驱动JAR包进行连接;还有一种则是用JDBC桥连接被广泛使用的ODBC,然后在ODBC中配置数据库相关信息进行连接。 什么是JDBC和ODBC?JDBC(Java DataBase Connectivity Java数据库连接)是一种规范化的Java关系数据库API,是...

2018-12-09 14:42:16 186

原创 Java 1.8新特性(lambda表达式)

lambda表达式对于Java语言来说是一个重大的变化,对于面向对象编程的Java语言来说它提供了一种倾向于函数式编程的方式。lambda表达式是一个可传递的代码块,可以在以后执行一次或多次。  lambda表达式的形式有参:(参数1,参数2,...,参数n) -&gt; {表达式}无参:() -&gt; {表达式}无参单句表达式:() -&gt; 表达式 ;单参单句表达式...

2018-12-08 20:52:12 692

原创 Java中组合、继承与代理之间的关系。

在Java中如何将一个已经定义好的类尽可能多的重复使用是提高开发效率和质量的关键。而下面我们要讲述的三种方式便是涉及到怎样去复用类让代码更优雅。一、组合定义:在新的类中产生现有类的对象。组合的例子其实随处可见,比如说我们在类中定义一个String类型的变量时就使用了组合,因为String本身就是类。public class FuUse { /* * 添加一个S...

2018-12-08 19:11:42 441

原创 Java类加载过程简要介绍

这里就作者所学及其理解对《深入理解Java虚拟机》这本书的内容发表看法,如有错误欢迎指出。 在说类加载的时候我们先来看看一个类的生命周期,如图示:类加载在这里包括了加载、验证、准备、解析、初始化五个部分,当一个类要加载进内存时虚拟机会依次执行这五个过程(解析过程可能会发生在初始化以后)。 一、加载阶段这个过程需要完成三件事情:1.通过一个类的全限定名来获取定义此类的...

2018-12-06 16:22:44 389 2

原创 Java设计模式之模版方法模式

模版方法模式就是使用一个抽象类声明一个或一组规范,并且定义一个模版方法使用这组规范所产生的结果,而这组规范会等到子类实现它时再根据不同的情况实现不同的策略。我们举一个简单直观的例子说明这个模式。/** 定义模版方法抽象类* */abstract class TemFunDP{ /* * 声明规范 * */ abstract String Demo...

2018-12-06 13:44:54 97

原创 Java虚拟机的内存分配

一 

2018-12-05 18:48:03 147

原创 Java中的内部类

内部类可以将一个类的定义定义在另一个类的定义中,这个类就叫做内部类。让我们看下关于定义一个内部类的简单示例。public class TestOne { /* * 定义一个内部类 * */ public class InnerClass{}}上述代码我们在TestOne类中定义了一个InnerClass内部类。关于使用内部类的好处,我将...

2018-12-04 15:20:28 99

原创 .CSS定位详解

2018-12-04 13:50:08 157 2

原创 Java设计模式之单例设计模式

一、饿汉式单例/** 单例模式* *//** 饿汉式单例模式* */class Singleton{ /* * 声明私有静态成员变量singleton。 * */ private static Singleton singleton = new Singleton(); /* * 私有构造器。 * */ pr...

2018-12-03 13:17:11 84

原创 Java设计模式之工厂设计模式

一、简单工厂/** 简单工厂(静态工厂)* *//** 抽象产品类* */interface CarProduct{ /* * 抽象产品类的抽象方法show()。 * */ public void show();}/** 具体产品类* */class BigCarProduct implements CarProduct{ p...

2018-12-03 11:50:19 112

原创 Java设计模式之装饰者模式

 一、定义装饰对象/** 定义一个装饰对象Person。* 包含一个方法feature()。* */class Person{ public void feature(){ System.out.println("I am a Person"); }}二、定义装饰器/** 定义装饰对象的装饰器PersonDecorator。* 其中...

2018-12-03 10:42:10 122

原创 Java中的回调函数简要介绍

/** 定义一个类A。* 类A中定义了回调函数callBack()。* */class A{ public void callBack(){ System.out.println("I am a callBack_function"); }}/** 定义一个类B。* 类A中定义了注册函数register(A a)。* */class B{ ...

2018-12-01 22:14:34 181

原创 Java中的静态绑定与动态绑定事例

在这个例子中使用Java面向对象中的多态来简单介绍静态绑定和动态绑定的区别。/** 创建一个Father类。* 为了方便获取,成员变量a设置为public的。* */class Father{ public int a = 10; public void saying(){ System.out.println("Father"); }}...

2018-12-01 18:21:59 1336

原创 前端学习心得

一、HTML —— 网页的骨架        html无疑是网页最基础的,其中各种各样的标签元素是形成一个可视化页面最基本的东西。    如何学习?        其实我觉得学习HTML不要把它当做主线学习内容去学。因为它的内容很多很杂,不但需要花费大量的时间和精力,而且如果学习周期过长还容易遗忘。所以我们可以先掌握一些基本的html标签,然后在学习脚本语言或者服务器语言的时候被动的学...

2018-05-06 11:30:45 620

原创 关于js中绑定事件失效问题

相信很多开始学习前端开发的朋友都发生过绑定事件失效的问题,那么究竟是什么原因使得事件失效呢?这里作者以jquery库编写作为例子。第一种:直接失效。&lt;html&gt;&lt;head&gt;&lt;script type="text/javascript" src="/jquery/jquery.js"&gt;&lt;/script&gt;&lt;script type=

2018-05-02 13:40:39 9609 1

原创 轮播图代码分享

// JavaScript Document//轮播图函数 function autoMoveImg(tagImg,tagBotton){ var imgs = document.getElementsByTagName(tagImg); //获取img图片对象数组 var buttons = document.getElementsByName(tagBotton); //获取图片显示...

2018-04-28 18:03:28 207

原创 js分页代码分享

js代码var home_page=1;//首页var curr_page=1;//当前页var last_page=10;//尾页var yema_num = 6;//页码数var page_row=1;//每页的条数var count_page=0;//总页数var count_row=0;//总条数var left_page=1;//最左端页码值var right_pa...

2018-04-28 17:27:29 3185

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除