一、计算机的硬件与软件
1、计算机组成
2、cpu、内存、硬盘
数据处理前都要加载到内存,然后通过cpu处理,之所以不从硬盘读取就是因为数据从磁盘读取慢,效率低。cpu从内存读数据时cpu从磁盘读取速度的十多倍
硬盘分类:机械硬盘(HDD)、固态硬盘(SSD)以及混合硬盘(SSHD)
ps:电脑卡,处理方法
1、增加内存,但是前提是本省内存空间不足,增加内存可以加快数据,如果内存空间足再增加没啥作用,内存使用可以通过任务管理器查看
2、换硬盘(机械硬盘换成固态硬盘)
3、换cpu(换电脑)
3、计算机软件
软件,即一系列按照特定顺序组织的计算机数据和指令的集合。有系统软件和应用软件之分。软件交互方式有两种:
图形化界面(Graphical User Interface,GUI),这种方式简单直观,使用者易于接受,容易上手操作。
命令行方式(Command Line Interface,CLI),需要在控制台输入特定的指令,让计算机完成一些操作。需要记忆一些指令,较为麻烦。
常用doc命令
二、计算机语言
第一代语言:机器语言,指令以二进制代码形式存在
第二代语言:汇编语言,使用助记符表示一条机器指令
第三代语言:高级语言,c、Java 、python、go,
高级语言独立于机器,有一定的通用性;计算机不能直接识别和执行用高级语言编写的程序,需要使用编译器或者解释器,转换为机器语言才能被识别和执行。
高级语言按照程序设计方法的不同,又分为:面向过程的语言、面向对象的语言。
C、Pascal、Fortran面向过程的语言
C++面向过程/面向对象
Java跨平台的纯面向对象的语言
C#、Python、JavaScript、Scala…
计算机语言排行榜
TIOBE (https://www.tiobe.com/tiobe-index/)是一个流行编程语言排行,每月更新。排名权重基于世界范围内 工程师数量,Google、Bing、Yahoo! 、Wikipedia、Amazon、Youtube和百度这些主流的搜索引擎,也将作为排名权重的参考指标。
学哪个语言?
1、C语言:万物之源
诞生于1972年,由AT&T公司旗下贝尔实验室创建完成,用于构建Unix操作系统。
偏向计算机底层操作(操作系统、网络、硬件驱动等)。
优势:几乎所有现代编程语言都脱胎于C
劣势:相当陡的学习曲线;不支持面向对象编程
2、C++语言:难学的语言
诞生于1983年,作为C语言的增强方案、升级版本。C是C语言的超集,C语言的大部分知识也适用于C。
用途:windows 或 MacOS UI、office全家桶、主流的浏览器、Oracle、MySQL、著名的游戏引擎(如星际争霸、魔兽世界)等
优势:很多公司都用 C++ 开发核心架构,如 Google、腾讯、百度、阿里云等;面向对象性
劣势:体系极为庞大,这是世界目前来说最复杂也是最难的编程语言。
3、C#语言:背靠大树的语言
诞生于2000年,一款强大而灵活的编程语言。靠着微软这棵大树,是多年来windows平台的一门主流编程语言。
用途:windows桌面应用开发、Windows Azure、游戏开发
4、PHP语言:最好的语言?
诞生于1994年,一款服务器端脚本语言。最初表示个人主页(Personal Home Page)
PHP语法和C类似,有很多的模板和框架,简单易懂,也许你可以在短短几天做出web app。它主要用于web端,快速建站网络开发
劣势:学习门槛太低;其代码运行速度低于大部分编程语言党争对手
5、JavaScript语言:前端为王
诞生于1995年,网景公司开发完成。
JavaScript是JavaScript 是目前所有主流浏览器上唯一支持的脚本语言。在前端开发中,占有不可替代的地位。
6、Java语言:需求旺盛
创建于1995年,Java是一种面向对象、基于类的编程语言。
Java可能是目前运用最广的项目语言。代码稳定性超过 C 和 C++,生产力远超 C 和 C++。有 JVM 在,可以轻松地跨平台。
具有强大的开源开发工具,大量的开源共享库。
Java拥有世界上数量最多的程序员,最不缺人。
7、Go语言:夹缝中生存
Go 语言现在很受关注,它是取代 C 和 C++ 的另一门有潜力的语言。
C 语言太原始了,C++ 太复杂了,Java 太高级了,所以 Go 语言就在这个夹缝中出现了。
Go语言已成为云计算领域事实上的标准语言,尤其是在 Docker/Kubernetes 等项目中。
Go 语言语法特别简单,你有了 C 和 C++ 的基础,学习 Go 的学习成本基本为零。
Go社区从Java社区移植了各种优秀的框架或库。
总结:
程序设计语言有很多种,每种语言都是为了实现某个特定的目的而发明的。
没有“最好”的语言,只有在特定场景下相对来说,最适合的语言而已。
如果你掌握了一种编程语言,也会更容易上手其它的编程语言。关键是学习如何使用程序设计方法来解决问题。这也是本套课程的主旨。
Talk is cheap,Show me the code
三、数据如何存储在计算器中
- 计算机就是一系列电脑开关,每个开发只有开关两个状态,如果电脑时开的值是1,如果电路是关的,它的值是0
- 一个1或者0就是一个bit,是计算机中最小的存储的单位,计算机中最小的存储单元是字节,每个字节由8个bit构造
- 计算机存储能力是以自己衡量的如下
千字节KB = 1024B
兆字节MB= 1-24kB
四、 java概述
1、版本
Sun公司(Orcale收购)开发的跨平台与语言,目前java体系包含J2EE(企业级web开发)、J2SE(桌面程序应用开发)、J2ME(手机应用程序开发)
G1是最受欢迎的GC算法。Java 11及更高版本的G1收集器是默认的GC,而Java 8中并不是。出于对G1的喜爱,很多开发者才会选择抛弃Java 8。
springboot3.0 是需要用java17和spring6.0为基础建设。如果从企业选型最新springboot3.0作为架构来说,它搭配jdk17肯定是标配了。
2、jdk jre和jvm
JDK:java开发工具包,不管记事本还是其他工具开发必须由java开发环境
JRE:java运行环境,想让自己的java程序运行起来,就得由jre,jre不仅包含jvm还有其他环境
jdk包含jre,jre包含jvm(安装jdk时候带有jre安装)
3、jdk安装
官网: www.oracle.com
在Developers页面中间的技术分类部分,选择Java,单击进入,如图所示:
这里展示的是最新Java版本,例如Java17。单击Download Java,然后选择具体的版本下载。
选择Download Java按钮后
如果想安装其他版本,选择Java archive,需要注册账号登录下载
下载下来点击安装,安装路径最好别放到c盘下,并且不要包含中文和空格,防止有些编程工具不识别
安装到如下步骤,是另外安装一个jre,因为jdk包含jre所以上面安装的时候已经安装了jre,此时关闭界面也行,但是为了保证有些编程工具配置jre问题,这里可以单独安装jre,比如这里安装到和jdk同目录下
配置环境变量
右键我的电脑→属性→高级系统设置→环境变量;
新建→变量名JAVA_HOME变量值复制你的jdk存放的位置即可→确定
win10中在环境变量中找到path--新建输入%JAVA_HOME%\bin--确定
win7中,直接在path路径最前面加上%JAVA_HOME%\bin;
注意win7中有一个英文封号%JAVA_HOME%\bin;
接下来就是验正是否配置成功,win+r 快捷启动命令段端输入cmd确认输入java –version 注意中间有一个空格,出现jdk版本说明配置成功
有的书籍、论坛、视频上还提到配置classpath,用于指名class文件识别的路径。其实是没必要的,反而建议大家如果配置了classpath环境变量,要删除。对于初学者,反而不友好。
五、helloword
记事本打开编写程序,
class HelloWorld{
public static void main(String[] args){
System.out.println("hello world");
}
}
保存文件名--HelloWorld.java
文件类型--所有类型到f盘(java源程序命名必须是.java,确保电脑纸关闭了隐藏已知文件扩展名的这个默认设置,原文件名可以随意定义 但是如果源文件中有public类 则要与类名一致。一个类中只有一个public)
打开cmd输入
首先编译:javac HelloWorld.java
然后运行:java HelloWorld
六、java开发工具
1、文本工具
2、集成开发环境(Integrated Development Environment,IDE)
七、java注释
单行注释: //注释内容
多行注释:
/* 注释文字1 注释文字2 注释文字3 */
文档注释(java特有):文档注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档
javadoc -d mydoc -author -version HelloWorld.java
八、 Java API文档
API (Application Programming Interface,应用程序编程接口)是 Java 提供的基本编程接口。
Java语言提供了大量的基础类,因此 Oracle 也为这些基础类提供了相应的说明文档,用于告诉开发者如何使用这些类,以及这些类里包含的方法。大多数Java书籍中的类的介绍都要参照它来完成,它是编程者经常查阅的资料。
Java API文档,即为JDK使用说明书、帮助文档
下载API文档:
在线看:https://docs.oracle.com/en/java/javase/17/docs/api/index.html
离线下载:https://www.oracle.com/java/technologies/javase-jdk17-doc-downloads.html
九、java特点
Java确实是从C语言和C++语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物。“青出于蓝,而胜于蓝”。
优点
1、**跨平台性:**这是Java的核心优势。Java在最初设计时就很注重移植和跨平台性。比如:Java的int永远都是32位。不像C++可能是16,32,可能是根据编译器厂商规定的变化。
2、通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run Anywhere”。
3、原理:只要在需要运行 java 应用程序的操作系统上,先安装一个Java虚拟机 (JVM ,Java Virtual Machine) 即可。由JVM来负责Java程序在该系统中的运行
4、安全性高
5、高性能
6、简单
缺点
语法过于复杂、严谨,对程序员的约束比较多,与python、php等相比入门较难。但是一旦学会了,就业岗位需求量大,而且薪资待遇节节攀升。
一般适用于大型网站开发,整个架构会比较重,对于初创公司开发和维护人员的成本比较高(即薪资高),选择用Java语言开发网站或应用系统的需要一定的经济实力。
并非适用于所有领域。比如,Objective C、Swift在iOS设备上就有着无可取代的地位。浏览器中的处理几乎完全由JavaScript掌控。Windows程序通常都用C++或C#编写。Java在服务器端编程和跨平台客户端应用领域则很有优势。