Xenolies

Welcome to Xenolies Blog !

Java语言基础

什么是JAVA 什么是JAVA?不就是杯咖啡吗(○` 3′○)( 谁说的,有可能还是个妹子╰( ̄ω ̄o)((( java是纯面向对象编程的语言。亲身经历:学JAVA无法解决单身问题 如何理解面向对象编程? 以下转自博客园的这个帖子。 例如我们设计一个桌球游戏(略过开球,只考虑中间过程) A:面向过程方式思考: 把下述的步骤通过函数一步一步实现,这个需求就完成了。(只为演示概念,不细究逻辑问题)。 ① palyer1 击球 —— ② 实现画面击球效果 —— ③ 判断是否进球及有效 —— ④ palyer2击球 ⑤ 实现画面击球效果 —— ⑥ 判断是否进球及有效 —— ⑦ 返回步骤 1—— ⑧ 输出游戏结果 B:面向对象方式思考: 经过观察我们可以看到,其实在上面的流程中存在很多共性的地方,所以我们将这些共性部分全集中起来,做成一个通用的结构 玩家系统:包括 palyer1 和 palyer2 击球效果系统:负责展示给用户游戏时的画面 规则系统:判断是否犯规,输赢等 我个人结合博客园帖子的理解: 面向对象更像是做一个锤子,一个普遍性工具,一个实现循环显示数字的代码可以到多个地方应用,比如显示数字,让小灯循环亮起。需要这个功能调用这个类就可以了,方便快捷。但是缺点显而易见的,锤子不可能适合砸所有东西,这样面向对象也是,需要对应的库来实现。 面向过程更像是定制化,效率高,但是添加新东西,需要写代码,相当于造一个专用的扳手。 向世界问好 代码 1 2 3 4 5 6 7 public class HelloWorld{ //JAVA系统的类,文件名必须和类名相同 public static void main(String[]args){ //定义main方法(函数), //一个 java 程序运行必须而且有且仅有一个 main 方法。 //JAVA程序开始,String(str)表明数据类型,args表示数组 System.out.println("hello,world"); //显示HelloWorld } //注意:方法必须用大括号括起来 } 注意: Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的

esp32制作小电视学习笔记

假期闲来无事,与其虚度,不如做点事干 你信吗?我不信 ( ̄ε(# ̄)☆╰╮o( ̄皿 ̄///)。于是就买了个开发板,正好借此学一学C语言。 于是,就立马买了需要的东西,清单如下: 物品 价格 数量 备注 Esp32 DevKit v1 30pin开发板 21.5 1 有30pin和36pin的版本 40P彩排杜邦线 2.81 1 母对母 1.8寸 彩色TFT屏幕 20 1 不带触摸 开发板连接线 0 0 家里找的 *注意:我买的屏幕型号是MSP1803,需要连接背光才能显示 * 一共44.31块,还行吧。 之后就找了个做小电视的视频就开始学了。 然后我懵了,我没学过单片机,大一只学过Python和HTML入门,我看不懂商家给的资料,也看不懂UP给的教程。 然后鼓捣了好久。玩了好久,才想起来有个单片机。 现在才整的有些样子,现在基本完成了,那么我就把我一路上踩过的坑说一下。 获取Chip ID报错 报错显示 “ exec: ‘cmd’: executable file not found in %PATH% 为开发板 ESP32 Dev Module 编译时出错。” 提示没有配置环境变量,配置完成,问题解决。 屏幕显示问题 屏幕不显示 检查自己的屏幕,教程里面是不接背光的,可以烧录进去,然后接背光试试。我今天(2022.2.12)才发现我的屏幕是一定要接背光的,我还搞了好久。 图片显示不正常,且有小部分花屏 有的人可能烧录进去以后发现屏幕是这个样子: 图片显示非常不正常,还有花屏的情况。 根据这个帖子的说法,是设计问题,可以通过切换配置文件的参数解决 。解决方法来自这个帖子。 按照这样的路径(.\arduino\arduino-nightly\hardware\espressif\esp32\libraries\TFT_eSPI)打开TFT_eSPI,找到User_Setup.h,打开。 找到这样的地方,并且把原来的#define ST7735_GREENTAB2注释掉,把#define ST7735_REDTAB解除注释,就显示正常了。 此方法选择的参数有可能其他屏幕无效,可以在几个参数切换试试看 然后重新烧录进去程序。 这样就显示正常了。 色彩显示错误 烧录进去了程序,有可能出现这样的情况:本该显示蓝色的地方显示了黄色。这是因为UP的程序里使用的是BGR,而你的屏幕是RGB,这样导致的色彩问题。

Pyinstaller的简单安装使用

Pyinstaller是可以把Python工程打包成为exe的一个Python模块。网上教程有很多,但是我在使用的时候会遇到很多问题,进而搜索大量网页,非常麻烦。所以准备写一篇文章把我碰到的一些问题整合起来,这样的话免去去查找大量网站的烦恼。 1.如何安装Pyinstaller 最简单的方法就是打开Win+R输入cmd,打开cmd窗口输入 1 pip install pyinstaller 但是, 有的时候你安装好了Python,用pip安装的时候会出现这个问题: 这个就说明Python的环境变量没有配置好,需要配置下,这时候需要找到Python安装目录下的Scripts文件夹,像我的就是C:\Users\111\AppData\Local\Programs\Python\Python311\Scripts 确认文件夹下有没有pip.exe,如下图: 如果有的话,把文件夹路径复制下来,然后就去“环境变量”那里找到path变量,添加地址保存即可 配置完成后记得重新打开CMD安装窗 如何找到环境变量,请在这个帖子查看。 如果出现这个了,说明正在安装了 最后显示这个,就说明成功安装了 如果出现这个了,说明要升级pip 直接输入下面这个就可以了。 1 python -m pip install --upgrade pip 2.用Pyinstaller打包 Pyinstaller主要语法就是:Pyinstaller +指令+Python文件 下面就是些常用的指令: -F,-onefile 产生单个的可执行文件 -D,–onedir 产生一个目录(包含多个文件)作为可执行程序 -a,–ascii 不包含 Unicode 字符集支持 -d,–debug 产生 debug 版本的可执行文件 -w,–windowed,–noconsolc 指定程序运行时不显示命令行窗口(仅对 Windows 有效) -c,–nowindowed,–console 指定使用命令行窗口运行程序(仅对 Windows 有效) 上表来源 然后就可以在cmd窗口输入指令来打包了,打包的时候记得转到文件所在的文件夹 转到要打包的Python所在的文件夹,可以使用cd+空格+文件夹地址来实现 这样就说明打包成功了 其中这个 是最后exe文件输出的地址 还要这个 说明已经打包成为exe文件了 之后就可以使用了,不需要再搭建Python环境了 如果打包完成发现窗口一闪而过,可以试试在代码末尾加一个input() 像这样 还有个缺少一些文件产生的问题,我自己重新打包的时候发现并没有碰到,测试了下发现无法复现,只好作罢。只记得那个要在Pyinstaller -F后面加一串来着。 3.日后谈 有些问题我当时使用的时候碰到了,现在没法复现,我自己也无法找到当时找的帖子了,有不少疏忽非常抱歉。(之后要是接着更新也说不定) 如有建议,欢迎留言,本人必洗耳恭听。

sakurairo主题设置页尾显示网站累计运行时间

本人是根据这个帖子找到的方法,还有这个帖子提供的代码做出来的。 代码如下: 在”页尾信息“可输入这段代码 1 网站运行:<span id="htmer_time" style="color: red;"></span> 这个设置出来文字是红色,可以根据需要修改 需要什么颜色就可以在上方代码中的color后修改成自己想要的颜色(英文名称或者 十六进制颜色表都可以)。 我设置的是#5e5e5e,仅供参考 其中”网站运行“可以需改成需要的文字。 后面的”页尾附加代码“部分则输入下面这段代码; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 <script> function secondToDate(second) { if (!second) { return 0; } var time = new Array(0, 0, 0, 0, 0); if (second >= 365 * 24 * 3600) { time[0] = parseInt(second / (365 * 24 * 3600)); second %= 365 * 24 * 3600; } if (second >= 24 * 3600) { time[1] = parseInt(second / (24 * 3600)); second %= 24 * 3600; } if (second >= 3600) { time[2] = parseInt(second / 3600); second %= 3600; } if (second >= 60) { time[3] = parseInt(second / 60); second %= 60; } if (second > 0) { time[4] = second; } return time; } </script> <script type="text/javascript" language="javascript"> function setTime() { // 博客创建时间秒数,时间格式中,月比较特殊,是从 0 开始的,所以想要显示 5 月,得写 4 才行,如下 var create_time = Math.

sakurairo主题的分类404报错的解决方法

这几天再整这个主题的时候 发现了个问题,就是设置的分类,点击会404报错,如下图: 最初以为是我的Nginx的问题,就查了下,发现没有作用,之后就找到主题的GitHub反馈页找了下才找到解决办法。 在这个帖子里找到的解决办法 伪静态的话,我用的是宝塔Linux面板,就直接很容易找到: 在站点的设置界面就可以找到了 就是这段代码: 1 2 3 4 5 6 location / { try_files $uri $uri/ /index.php?$args; } rewrite /wp-admin$ $scheme://$host$uri/ permanent; 尽量不要用网上找到的代码, 否则进入后台的时候会有如下错误: 让我折腾到了半夜 设置好以后就可以舒舒服服的写文章啦╰( ̄ω ̄o)
0%