摘要:
效果如下 代码 思路 思路,蛇由两个类组成,方块类和蛇类,蛇类的存在依赖于方块类。蛇类当中的body保存当前蛇类的所有的方块。绘图,直接遍历body内部的所有绘图方法。移动,根据保存的私有变量方向用来对数组中保存的方块对象进行更改 还有一个苹果类。用于进行随机生成 吃苹果,在移动方法中,如果蛇的头方 阅读全文
摘要:
gitbook docker 镜像 为gitbook docker镜像 效果图 效果如下图所示 使用说明 环境准备 需要docker环境。 使用步骤 第一种 1. 请先frok本项目 2. frok完成以后,登录主机,输入如下命令,项目拉取下来 3. 进行本地构建,输入如下代码 4. 运行该镜像 5 阅读全文
摘要:
效果 代码 思路 创建数组用于保存五子棋的位置即可。 输赢判断使用遍历即可 重复落棋用判断保存的数组的位置是否已经有棋子即可 落在交叉线和附近的点判断,如果相差小于一定数值进行落棋。 阅读全文
摘要:
介绍 SVG是构建XML树的方式来达到绘制图形的,canvas是通过调用相关的方法来绘制图形的。 区别:SVG绘制图形,通过移除或者更改DOM方式来而使用canvas需要把图片从新擦除。 绘制的API在绘制上下文中定义。而不在画布中定义。 需要获得上下文对象的时候,需要调用画布的getContext 阅读全文
摘要:
MVC 模型视图控制器模型 这是中文名称 原先是为桌面应用建立的框架,后来转变成为B/S模型。 经典图如下 ![](https://melovemingming 1253878077.cos.ap chengdu.myqcloud.com/blog image/2019/02/model view 阅读全文
摘要:
四则运算 模型公式,输入一个公式,然后输入其中的参数,然后运算出结果 代码如下 抽象表达式类 变量解析器,根据此,可以获得保存在map中的键值对 抽象运算符号解析器 对加法进行解析 再次对解析器进行封装,此为公式 在上方中,完成的是对表达式的输入 最后场景 总结 解释器模式不难,核心思想在于构建语法 阅读全文
摘要:
首先 抽象员工 下面是普通员工 管理层 最后场景 改造如下 先定义访问者接口 访问者实现 继续书写抽象员工类 普通员工 场景类 扩展 统计功能 汇总和报表,经常使用统计功能。 即,一堆计算公式,生产出一个报表。 统计公式员工的工资总额 定义访问者 最后编写场景类 双分派 单分派:处理一个操作根据请求 阅读全文
摘要:
栗子 定义一个游戏者接口 定义游戏着类,实现游戏者接口 场景类 改进 增加一个代练 场景类如下 扩展 代理分为普通代理和透明代理 普通代理 普通代理要求客户端只能访问代理角色,不能访问真实角色。 最后场景类 强制代理 最后书写场景类 强制代理场景类 代理需要拥有个性 即一个类可以实现多个接口,完成不 阅读全文
摘要:
类加载流程 类加载流程,先加载Bootstrap ClassLoader 启动类加载即最顶层的加载类。这部分由C++ 编写。 继续再次加载Extention ClassLoader 扩展类加载器由Bootstrap ClassLoader加载,加载进入内存。 继续再次加载Application Cl 阅读全文
摘要:
函数指针 函数是存放在内存的代码区域内 栗子 int test(int a){ return a; } int main(int argc, const char argv[]){ // 这里定义了一个参数为int类型的函数,函数的返回值为int类型的指针fp int ( fp)(int a); / 阅读全文