一、Java的简介
1.Java语言的概述
1.1Java是什么
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
1.2Java的语言发展简史
Java 语言源于 1991 年 Sun 公司 James Gosling 领导的的 Oak 项目,1995 年 Sun 公司正式起名为 Java,并提出“Write once, Run anywhere" 的口号。
1.3Java是最好的语言么
并不是,因为在每个领域都有更合适的编程语言。
那么,Java 语言到底有什么优势可以占据排行榜第一的位置呢?
1、语法比较简单,学过计算机编程的开发者都能快速上手。
2、在若干了领域都有很强的竞争力,比如服务端编程,高性能网络程序,企业软件事务处理,分布式计算,Android 移动终端应用开发等等.
2.初识Java的main方法
2.1main方法的示例
2.2运行Java程序
Java是一门半编译型、半解释型语言。先通过javac编译程序把源文件进行编译,编译后生成的.class文件是由字节码组成的平台无关、面向JVM的文件。最后启动java虚拟机来运行.class文件,此时JVM会将字节码转换成平台能够
理解的形式来运行。
JRE(Java Runtime Environment):Java运行时环境,包含了JVM,Java基类库。是使用Java语言编写程序运行的所需环境。
JDK(Java Development Kit):Java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsole、jstack等。
Java程序运行需要经过编译,运行两个阶段。
编译:javac 命令
运行:java 命令
二、Java的数据类型和运算符
1.变量和类型
变量的概念:计算机内存中的一块存储空间,是存储数据的基本单元。
1.1基本数据类型
1.1.1整型变量
基本语法格式:int 变量名 = 初始值;
1.1.2长整型变量
基本语法格式:long 变量名 = 初始值;
1.1.3双精度浮点变量
基本语法格式:double 变量名 = 初始值;
1.1.4单精度浮点变量
基本语法格式:float 变量名 = 初始值;
1.1.5字符类型变量
基本语法格式:char 变量名 = 初始值;
1.1.6字节类型变量
基本语法格式:byte 变量名 = 初始值;
1.1.7短整型变量
基本语法格式:short 变量名 = 初始值;
1.1.8布尔类型变量
基本语法格式:boolean 变量名 = 初始值;
1.2引用数据类型
1.2.1字符串
基本语法格式:String 变量名 = “初始值”;
1.2.2数组
1.2.3对象
1.3变量的命名规则
硬性指标:
- 一个变量名只能包含数字, 字母, 下划线。
- 数字不能开头。
- 变量名是大小写敏感的。即 num 和 Num 是两个不同的变量。
注意: 虽然语法上也允许使用中文/美元符($)命名变量, 但是 强烈 不推荐这样做。
软性指标: - 变量命名要具有描述性, 见名知意。
- 变量名不宜使用拼音(但是不绝对)。
- 变量名的词性推荐使用名词。
- 变量命名推荐 小驼峰命名法, 当一个变量名由多个单词构成的时候, 除了第一个单词之外, 其他单词首字母都大写。
1.4理解类型转换
Java 作为一个强类型编程语言, 当不同类型之间的变量相互赋值的时候, 会有教严格的校验。
1.4.1、int 和 long/double 相互赋值:
- long 表示的范围更大, 可以将 int 赋值给 long, 但是不能将 long 赋值给 int。
- double 表示的范围更大, 可以将 int 赋值给 double, 但是不能将 double 赋值给 int。
结论: 不同数字类型的变量之间赋值, 表示范围更小的类型能隐式转换成范围较大的类型, 反之则不行。
1.4.2、int 和 boolean 相互赋值
结论: int 和 boolean 是毫不相干的两种类型, 不能相互赋值。
1.4.3、int字面值常量 给 byte 赋值
注意: byte 表示的数据范围是 -128 -> +127, 256 已经超过范围, 而 100 还在范围之内。
结论: 使用字面值常量赋值的时候, Java 会自动进行一些检查校验, 判定赋值是否合理。
1.4.4、使用强制类型转换
结论: 使用 (类型) 的方式可以将 double 类型强制转成 int. 但是
- 强制类型转换可能会导致精度丢失. 如刚才的例子中, 赋值之后, 10.5 就变成 10 了, 小数点后面的部分被忽略。
- 强制类型转换不是一定能成功, 互不相干的类型之间无法强转。
2.运算符
2.1算数运算符
- 基本四则运算符 + - * / %
- 增量赋值运算符 += -= *= /= %=
- 自增/自减运算符 ++ –
注意:
1、 int / int 结果还是 int, 需要使用 double 来计算。
2、 0 不能作为除数。
3、 % 表示取余, 不仅仅可以对 int 求模, 也能对 double 来求模。
2.2关系运算符
关系运算符主要有六个:== != < > <= >=
2.3逻辑运算符
逻辑运算符主要有三个:&& || !
2.4位运算符
位运算符主要有四个:& | ~ ^
2.5条件运算符
条件运算符只有一个:表达式1 ? 表达式2 : 表达式3
3.注释
3.1基本规则
Java中的注释主要分为以下三种:
- 单行注释:// 注释内容(用的最多)
- 多行注释:/* 注释内容*/(不推荐)
- 文档注释: /** 文档注释*/(常见于方法和类之上描述方法和类的作用),可用来自动生成文档
3.2注释规范
- 内容准确: 注释内容要和代码一致, 匹配, 并在代码修改时及时更新。
- 篇幅合理: 注释既不应该太精简, 也不应该长篇大论。
- 使用中文: 一般中国公司都要求使用中文写注释, 外企另当别论。
- 积极向上: 注释中不要包含负能量(例如 领导 SB 等)。
4.关键字
关键字是 Java 中的一些具有特定含义的单词。