Java_Day_5学习笔记
类与方法类
类就是自定义的数据类型,包括属性和方法,由类创建的变量称作实例;
我不知道我的比喻对不对,欢迎大家指正;
感觉这个类像是我们用的那些基础数据类型一样,创建的时候要符合该数据类型的创建规则,比如int,int[]等,使用的时候也只能使用其中规定的方法;只不过这里是我们自设置的规则和相关的方法
举例:
定义一个猫类,包括名字,年龄,喜好,行为(方法)
12345678910111213141516171819202122232425// class.javapublic class class01{ public static void main(String[] args){ //创建一个实例 Cat cat1 = new Cat(); cat1.name = "white"; cat1.age = 3; cat1.hobby = "fishes"; // cat2是对象的变量名,只是一个填充真正实例地址的变量 // 真正的实例是new Cat()创建的空间 Cat cat2 = new C ...
Java_Day_4学习笔记
数组
存放一组相同的数据类型
引用从0开始
初始化
数据类型 数组变量[] = new 数据类型[元素个数];
int a[] = new int[n]; //此处的n是整数常量
1232. ```java 数据类型 数组变量名[]; //先声明但是并未初始化数据
数据类型 数组变量名[] = {e1, e2, e3, ……};
12345678910111213141516171819202122232425262728293031323334353637383940==注意:==- 数组的元素必须跟数组变量名一致或者能转换为与数组变量名一致的数据类型,否则会报错- 数组创建后,如果未初始化,则数组中各个元素有默认值 | 类型 | 默认值 | | ------- | ------ | | int | 0 | | short | 0 | | byte | 0 | | long | 0 | | float | 0.0 | | double | 0.0 | | cha ...
Docker学习笔记
docker简介
Docker是一个应用打包、分发、部署的工具;
只虚拟化软件的运行环境,性能好,损耗少,较稳定;
命令行操作,不需要繁杂的安装过程
==打包:==把软件运行的依赖、第三方库和软件程序集成到一个包里面。
==分发:==一个打包好的镜像仓库,可以被分发给其他人进行便利的安装。
==部署:==不管所使用PC搭载的什么OS都可以通过镜像仓库一键部署,让人感觉不到差异、
优势:
一次调试安装、环境配置即可,提高可移植性
多版本软件共存,不会污染环境中的其他软件程序或者其他环境
虚拟机虽然也能实现在一种OS上运行另外一种OS,但是它资源占用多、冗余步骤多、启动还慢。
Java_Day_3学习笔记
控制结构
顺序控制
分支控制
循环控制
break
continue
return
顺序控制
程序从上到下逐行执行,中间没有任何判断和跳转
前向引用
1234public class Order{ int num1 = 1; int num2 = num1 + 1; //因为num1在前面已经初始化过了,所以这个地方可以直接引用;如果未初始化而直接引用就会报错}
分支控制单分支
基本语法
1234567if(条件表达式){ 执行代码1; 执行代码2; 执行代码3; 执行代码4; ……………………}
条件表达式为true就执行{}里面的东西,否则就直接跳过该代码块
双分支
基本语句
12345if (条件表达式) { 执行代码块;} else { 执行代码块;}
多分支
基本语句
12345678910111213if(条件表达式1){ 代码块1;}else if(条件表达式2) { ...
Java_Day_2学习笔记
运算符介绍运算符是一种特殊的符号,表示数据间的一些操作
算术运算符
赋值运算符
关系运算符【比较运算符】
逻辑运算符
位运算符【二进制基础】
三元运算符
算术运算符
运算符
运算
+
正号
-
负号
+
加
-
减
*
乘
/
除
%
取余
++
自增(前)先运算后取值自增(后)先取值后运算
- -
自减(前)先运算后取值自减(后)先取值后运算
+
字符串相加
除法(/)Java在进行除法运算的时候,一定要关注数据的类型,相同的数据,不同的数据类型可能会得出来不同的结果。这一点其实在C++中也存在。下面是一个关于除法运算的一个案例(仅供参考):
1234567891011// ArithmeticOperator.java// 创建一个公共的类,切记一个.java文件只能有一个公有库,且名字与文件名一致public class ArithmeticOperator{ // 创建main函数,至于为什么是这个,笔者现在还不知道,笔者也在学习 public static void main(St ...
Java_Day_1学习笔记
学前简述学习方法
为什么学?
技术控?
项目需求?
作业要求?
方法?
现有技术能解决?
现有技术能完美解决?
新技术和知识点?
根据需求有针对点的学习
怎么学?
基本原理和基本语法(不考虑细节,快速过一遍),不要先考虑细节,因为细节永无止境
快速入门(基本程序)
熟悉后,再考虑细节
历史信息
1995年,Java诞生。
目前属于甲骨文公司所有
目前用的最多的版本是8和11
语言特点
面对对象(oop)
可移植性高
解释性语言 解释性语言:编译后的程序需要解释器执行,如python、Java、PHP。 编译性语言:编译后的程序可以直接执行,如C/C++
开发工具软件
editplus、 notepad++
Sublime Text
IDEA
eclipse
选择初学者建议用集成度低的软件,培养代码感。例如Sublime。
做项目的时候,建议使用IDEA与eclipse这些集成度高的软件,会更方便进行项目开发。
运行机制Java能运行起来全靠各个平台的JVM(Java虚拟机)
JVM特点
包括在JDK中,通过安装不同版本的J ...
Vercel部署ChatGpt
ChatGpt-Next-Web是GitHub上非常火的一个ChatGpt部署项目,当然需要用到openai的api_key,一般来说,这个东西国内很难搞到手。
不过你放心,本项目就是关于替代openai的api_key做一个国内的替代,并在Vercel上部署该项目。项目准备
首先,需要有一个github账号,怎么申请,我推荐大家可以去百度或者CSDN上搜索,都能找到保姆级的注册教程,有了github账号后,可以利用github账号在很多程序员网站进行授权登录,跟在其它第三方平台用qq登录类似。
其次,需要我们把上边那个项目fork到自己的github中去,这个也很简单,此处不再做教程。
申请一个API_KEY,这里用的是deepseek的api代替openai的API_KEY,下面是相关的对比。
==记住上面的那个API_KEY==,后面要用。
项目部署登录网站vercel,然后进行以下操作:
用github进行库的部署,找到这个库并进行import。
把你申请的API_KEY填入下面的空中,然后Add按钮会亮起,之后 ...
机器学习之K-邻近算法
K-邻近算法【采用测量不同特征值之间的距离来进行分类】
优点:精度高、对异常值不敏感、无数据输入假定
缺点:计算复杂度高,空间复杂度高
适应数据范围:数值型、标称型
KNN简介原理
简述:采用测量不同特征值之间的距离来进行分类。一种泛用于机器学习的监督学习方法,所输入的样本数据集合(也称为训练集、样本集)中每个数据都存在标签,且每条数据与所属的种类相互对应。
核心思想:如果一个待分类样本在特征空间中的k个最相似**(即特征空间中K近邻)**的样本中的大多数属于某一个类别,则该样本也属于这个类别
K值:邻居的数量,是应该提前给出来的,
操作系统知识点总结
第一章 概述操作系统在干嘛,底层思想
第二章 进程管理操作系统的最大作用,核心功能
第三章 内存管理物理地址到逻辑地址的映射,脱离硬件第一步
第四章 文件管理再封装管理各种数据,脱离硬件第二部,到达软件层面
第五章 I/O管理联通硬件和软件,捋一下各种功能
第一章 计算机系统概述目的:为什么要有操作系统,拿来干嘛?管理什么?
思想:有什么底层思想支撑操作系统的开发?
历史:操作系统是怎样一步一步发展起来的?
组成:操作系统运行机制,靠什么实现的?
操作:由底层思想可以延伸出什么基本操作?
状态:操作系统在运行过程中有哪些状态?
结构:操作系统的结构,和位于计算机哪个位置?
目的:为什么要有操作系统,拿来干嘛?管理什么?==概念、功能、管理、接口==
思想:有什么底层思想支撑操作系统的开发?==并发、共享、虚拟、异步、封装==
历史:操作系统是怎样一步一步发展起来的?==手工操作阶段、单道批处理、多道批处理、分时操作系统、实时操作系统、分布式、个人==
组成 ...
操作系统知识点简述
第一章 计算机系统概述1.1 操作系统1.1.1 操作系统的概念和功能
概念操作系统(Operating System, OS)是指控制和==管理==整个计算机系统的==硬件和软件==资源,并合理地组织调度计算机的工作和资源的分配;以==提供给用户和其他软件方便的接口和环境==;它是计算机系统中最基本的==系统软件==。
功能和目标①操作系统是系统资源的管理者
②向上层提供方便易用的服务==封装==思想:操作系统把一些丑陋的硬件功能封装成简单易用的服务,使用户能更方便地使用计算机,用户无需关心底层硬件的原理,只需要对操作系统发出命令即可。
GUI:图形化用户接口(Graphical User Interface)用户可以使用形象的图形界面进行操作,而==不再需要记忆复杂的命令、参数==。例子:在Windows 操作系统中,删除一个文件只需要把文件 ...