狂神说Java(零基础)预科班笔记

前言

​以下笔记是根据B站up主遇见狂神说的Java零基础学习视频整理而成,视频链接点这里跳转 (狂神说系列 Java零基础版)。由于本人推崇费曼学习法,不想要写完一篇笔记之后就直接复制粘贴到博客上,所以根据我自己的笔记内容(笔记当然还是和秦疆老师PPT上的内容一致的),我自己组织了一下语言,也参考了一些资料,补充在了上面。虽然现在的博客大多数内容来自于秦疆老师的授课,没有大的改动,这是对老师辛苦劳动成果的一种尊重,但是我相信在养成写博客的习惯后我也能督促自己学习。感谢秦疆老师!

1. 初步了解计算机

​计算机,全称电子计算机,俗称电脑,是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件软件构成。常见的形式有台式计算机、笔记本计算本、大型计算机等,广泛应用在:科学计算,数据处理,自动控制,计算机辅助设计,人工智能,网络等领域。

  • 硬件包括:CPU,主板,内存,电源、主机箱,硬盘,显卡,键盘、鼠标,显示器……
  • 软件分为:系统软件应用软件
    • 常见的系统软件有:DOS(Disk Operating System),Windows,Linux,Unix,Mac,Android,IOS……
    • 一些应用软件的例子:WPS,QQ,微信,英雄联盟,绝地求生……

1.1 硬件相关

  • 硬件:一些物理装置按系统结构的要求构成一个有机整体,为计算机软件运行提供物质基础。

​既然硬件是电脑的组成部分,那购买相关硬件进行组装,组装合适就可以形成个性化的电脑。这就是装机。而我们平常买电脑,一般是买组装好的品牌机,买回来就能用了,也是一种选择方式。

​接下来要说的这位人物,要学计算机的人,肯定都知道——冯·诺依曼。他是计算机科学家,也是数学家、物理学家,除了“现代计算机之父”之称,还有“博弈论之父”之称,可见他知识渊博。他提出了著名的冯·诺依曼体系结构,如下图所示(图片来自百度):

冯·诺依曼体系结构

​根据《计算机科学导论》(贝赫鲁兹·佛罗赞 著)的定义,基于冯·诺依曼模型建造的计算机分为4个子系统:存储器、算术逻辑单元、控制单元和输入/输出单元。我简化了一下:

  1. 存储器。顾名思义,是用来存储的区域。
  2. 算术逻辑单元。是用来计算和逻辑运算的地方。
  3. 输入/输出单元:输入子系统从计算机外部接收输入数据和程序,输出子系统负责将计算机处理的结果输出到计算机外部。
  4. 控制单元:对上述子系统控制操作的单元。

1.2 软件相关

​我们已经知道,计算机由硬件和软件构成。提到了硬件,再来提软件。

  • 软件:计算机软件可以使计算机按照事先预定好的顺序完成特定的功能。

  • 什么是软件?

    ——根据百度百科上的定义,软件是一系列按照特定顺序组织的计算机数据和指令的集合。

  • 什么是软件开发?

    ——根据百度百科上的定义,软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉,需求分析,设计,实现和测试的系统工程。软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。

  • 什么是人机交互?

    ——人机交互方式主要分为图形化界面(Graphical User Interface,GUI)和命令行方式(Command Line Interface,CLI).

    GUI:这种方式简单直观、便于上手,例如windows的操作

    CLI:需要一个控制台和指令,用户使用时需要记住特定的指令及格式。如在windows中运行cmd命令,开启windows的命令行控制台。
    (关于人机交互的上述资料来源于酷课自主学习平台,点这里跳转)]

  • IntelliJ IDEA。java编程语言的集成开发环境,后续编程就是在这个环境上进行

2.电脑常用快捷键

  • 键盘功能键:Tab、Shift、Ctrl、Alt、空格、Enter、Window、↑、↓、←、→

    • Tab:
      切换菜单、空4个空格
    • Shift:
      组合键,如组合数字0-9,或者其他键,打出符号
    • Ctrl:
      组合键,如按住Ctrl+Shift,可切换输入法语言
    • Win:
      调出菜单
    • Alt:
      Alt+F4,关闭页面
    • 空格:
      输入文本时产生间隙
    • 回车
      表确定
    • caps lock
      大写
    • F1-F12
      配合一些软件使用
    • (台式机)Num Lock:
      按下这个键小键盘才能使用
  • 键盘快捷键:全选、复制、粘贴、撤销、保存、关闭窗口、运行、永久删除……

    • Ctrl+C:复制

    • Ctrl+V:粘贴

    • Ctrl+A:全选

    • Ctrl+X:剪切

    • Ctrl+Z:撤销

    • Ctrl+S:保存

    • Shift+Delete:永久删除

    • win+R:可打开许多程序,如cmd

    • win+E:打开文件

    • win+Tab:切换应用程序

    • Ctrl+Shift+esc:打开任务管理器.

      点击Windows资源管理器,右击结束任务,桌面就消失了;

      若要恢复,则运行一个新任务,输入打开:explorer

3.基本的Dos命令

  • 打开cmd的方式

    1. 开始+系统+命令提示符

      打开开始菜单,在字母W中找到Windows系统,点击命令提示符

    2. Win键+R 输入cmd 打开控制台(推荐使用)

    3. 在任意地方,按住shift键 + 鼠标右键点击,在此处打开Powershell窗口

    4. 资源管理器的地址栏前面加上cmd 路径

      打开此电脑,到文件位置,在地址栏前加上cmd,注意cmd后有一个空格,然后回车

  • 管理员方式运行:方式1,右键选择以管理员方式运行

  • 常用的dos命令(注意以下均为英文符号):

盘符切换(如切换到D盘)

输入D:

后回车

查看当前目录下的所有文件

dir

切换目录(cd)

  1. 如从某盘切换到E盘:

​cd /d E:

​cd /d E:\文件名

​2. 返回上级:

​cd ..

​3.同级目录下进入下一级

​cd 目录名

其他:

  • 清理屏幕:cls
  • 退出终端:exit
  • 查看电脑ip:ipconfig
  • 打开应用:
    • calc 计算器
    • mspaint 绘图工具
    • notepad 记事本
  • ping命令
    • 如ping www.baidu.com
    • 得到百度的一个ip地址,ping命令一般用来测试网络是否正常
  • 创建目录
    • md
    • 如md test,创建一个名为test的文件夹
  • 创建文件
    • cd>a.txt,用cd进入text文件夹后输入cd>a.txt,表示在text文件夹下创建一个名为a的txt文件
  • 删除文件
    • del
    • 如del a.txt
  • 移除目录
    • rd
    • 如rd text

4.计算机语言发展史

第一代语言:机器语言

​我们都知道计算机的基本计算方式都是基于二进制的方式,二进制形如0101110101,这种代码是直接输入给计算机使用的,不经过任何的转换。很显然,人类很难直接读懂它。

第二代语言:汇编语言

​汇编语言是为解决人类无法读懂机器语言的问题,用指令代替了二进制。特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植。在今天的实际应用中,它通常被应用在底层,硬件操作和高要求的程序优化的场合。驱动程序、嵌入式操作系统和实时运行程序都需要汇编语言。相关百度百科链接我放在这里,点这里跳转 汇编语言百度百科.

​汇编语言目前应用:逆向工程、机器人、病毒等。其中逆向工程(又称逆向技术),是一种产品设计技术再现过程,即对一项目标产品进行逆向分析及研究,从而演绎并得出该产品的处理流程、组织结构、功能特性及技术规格等设计要素,以制作出功能相近,但又不完全一样的产品。比如破解软件。相关百度百科链接我放在这里,点这里跳转 逆向工程百度百科.

​汇编语言图片:

汇编语言

上述图片来源于百度,原文档出自第5课ARM汇编语言程序设计基础PPT.

第三代语言:高级语言

  • 摩尔定律:当价格不变时,集成电路上可容纳的晶体管数目,将每隔18个月便会增加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18个月翻2倍以上。

  • 高级语言大体上分为面向过程面向对象两大类。C语言是典型的面向过程的语言、C++、Java是典型的面向对象的语言。但不要把两者区分的过于明显,我们不能狭义地认为Java就是面向对象的语言,面向对象的编程中也离不开面向过程,两者是相辅相成的。

  • C语言可以被称为现代语言的鼻祖,既有高级语言的特点也有汇编语言的特点,一般用于写操作系统、工作系统,编写一些不依赖计算机硬件的应用程序,C++是C语言面向对象的版本,可以说是升级版。Java一开始被称为C++--,把C++中不好的东西“减”去了。微软的比尔·盖茨对Java评价很高,微软后推出了C#(C sharp,不要读作C井),在C#中可以看到许多Java的特性。我们常见的Python一般用于大数据分析、人工智能。而Java可用于服务器开发。

posted @ 2023-01-01 19:38  新世纪的风  阅读(271)  评论(0)    收藏  举报