狂神说Java–Java学习笔记(基础合集)


预科

什么是计算机

  1. 名称:Computer,全称电子计算机,俗称电脑。
  2. 定义:能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。
  3. 组成:由硬件和软件组成。
  4. 形式:常见显示有台式计算机、笔记本计算机、大型计算机等。
  5. 应用:科学计算、数据处理、自动控制、计算机辅助设计、人工智能、 络等领域。

硬件及冯诺依曼结构

计算机硬件

组成:CPU,主板,内存,电源,主机箱,硬盘,显卡,键盘、鼠标,显示器。

冯诺依曼结构

计算机语言发展史

  • 第一代语言:机器语言
  • 第二代语言:汇编语言
  • 第三代语言:高级语言

高级语言

C、C++、Java、C#、Python、PHP、JavaScript …

大体上分为:面向过程面向对象两大类

  • C语言是典型的面向过程的语言,C++,Java是典型的面向对象的语言

Java入门

Java帝国的诞生

Java特性与优势

  • 简单性
  • 面对对象
  • 可移植性
  • 高性能
  • 分布式
  • 多态性
  • 多线程
  • 安全性
  • 健壮性

Java三大版本

  • Write Once,Run Anywhere

  • JavaSE: 标准版 (桌面程序,控制台开发…)

  • JavaME: 嵌入式开发 (手机,小家电…),已经凉了

  • JavaEE: E企业级开发 (Web端,服务端开发…),JavaSE为基础

JDK JRE JVM

  • JDK:Java Development Kit (Java开发者工具,包括 JRE,JVM)
  • JRE:Java Runtime Environment (Java运行时环境)
  • JVM:Java Virtual Machine (Java虚拟机,跨平台核心)

标识符注意点

  • 所有标识符都应该以 字母、$(美元符)、_(下划线) 开头
  • 首字母之后可以是 字母、$、_ 或数字任何字符组合
  • 关键字不能作为变量名或方法名
  • 标识符大小写敏感
  • 可以用中文命名,但不建议使用,即使用拼音命名也Low

数据类型

  • 强类型语言

    • 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
  • 弱类型语言:JavaScript,Python

  • Java的数据类型分为两大类

    • 基本类型(primitive type),有8大基本类型,此外都是引用类型
    • 引用类型(reference type)

  • 运算中,不同类型的数据先转化位同一类型,再进行运算。
    • 强制转换,(类型)变量名,容量由高到低
    • 自动转换,容量由低到高

变量、常量、作用域

  • 变量是什么:就是可以变化的量

  • Java是一种强类型语言,每个变量都必须声明其类型

  • Java变量是程序中最基本的存储单元,要素包括变量名,变量类型和作用域

变量作用域

  • 类变量(static)
  • 实例变量
  • 局部变量

常量

  • 常量:初始化后不能再改变的值,不会变动的值。

  • 可以理解为一种特殊的变量,其值被设定后,在程序运行过程不允许被更改。

变量的命名规范

  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写+驼峰原则:lastName
  • 局部变量:首字母小写+驼峰原则
  • 常量:大写字母和下划线:MAX_VALUE
  • 类名:首字母大写+驼峰原则:Man,GoodMan
  • 方法名:首字母小写+驼峰原则:run(),fastRun()

运算符

  1. 打开某个类所在文件夹下的cmd命令行
  2. 输入:javadoc -encoding UTF-8 -charset UTF-8 Doc(类名).java
  3. 会自动生成该类有关的API文档,查看文件夹发现多了一些文件
  4. 打开 index.html(首页)查看文档注释

Java流程控制

用户交互Scanner

Scanner对象

  • 之前我们学的基本语法并没有实现程序和人的交互,Java给我们提供了一个工具类,可以获取用户的输入java.util.Scanner是Java5的新特征,我们通过Scanner类来获取用户的输入。

  • 基本语法

  • 通过Scanner类的 next()与 nextLine()方法获取用户的字符串,读取前一般用hasNext()与hasNextLine()判断是否还有输入的数据。

next():

  • 一定要读取到有效字符后结束输入
  • 对输入有效字符之前遇到的空白,next()方法会自动将其去掉
  • 只有输入有效字符后才能将后面输入的空白作为分隔符或者结束符
  • next()不能得到带有空格的字符串

nextLine():

  • 以enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
  • 可以获得空白

Scanner进阶

判断scanner是否输入的正确

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年9月6日
下一篇 2021年9月6日

相关推荐