1.Java可以理解为编程语言或者开发工具,为了让平台对编程人员透明,写出可以在不同平台运行的相同源代码,Java 开发出了 JVM 即 Java 虚拟机,从而做多一次编译,到处运行。
2.以下是java的运行原理示意图
即在机器和编译程序之间加入了一层抽象的虚拟的机器。这台虚拟的机器在任何平台上都提供给编译程序一个的共同的接口。
编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。在Java中,这种供虚拟机理解的代码叫做字节码(ByteCode)(class文件的内容),它不面向任何特定的处理器,只面向虚拟机。每一种平台的解释器是不同的,但是实现的虚拟机是相同的。
Java源程序经过编译器编译后变成字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行。
3.Java开发工具包(Java Development Kit)即JDK,是一套用户给 Java 编程人员的开发套件,其中包含了:JRE (Java Runtime Envoirment):Java 运行时环境,其中最重要的部件是 JVM;Java 开发工具:编译工具 javac、API 生成工具 javadoc......;核心类库 (Java API)。
4.面向过程编程:通过一个函数去完成一件事情,而且这件事情完成之后,不会留下任何的遗产。或者理解为:一次性。
面向对象编程:在完成一件事情时,会将事情中的实体对象抽象出来,形成「类」的概念,事情的完成是通过类的对象之间发生关系去实现的。
5.注释分为:
文档注释
/**
*
*
*/
单行注释
//
多行注释
/*
*/
6.在学习过程中,一定要经常的阅读 JDK 文档,去帮助理解相关类的定义。看 JDK 中相关类的源码,去学习编码规范以及设计程序的思路。
7.识符的命名规范:只能包含数字、字母(大小写,Unicode字符)、下划线 _、美元符$.
不能以数字开头.demo1、demo-1、$demo、_demo、1demo
分隔符:花括号 {}
:定义代码块,逻辑上是一个整体,包括类的主体、方法体、静态代码块、条件和循环语句的执行体;分号 ;
:语句的结束,如果出现在一行中有几条语句,那么多条之间也要用 ; 隔开;方括号[]
:用于数组中;圆括号 ()
:在方法中声明形式参数,在调用方法的时候传入实际参数,表达式优先级定义;空格:单个空格、Tab 键、Enter 键,空格的出现是不会影响程序运行的,但是良好的缩进,可以提高程序的可读性;圆点 .
:用于类/对象与其成员之间的分隔,表示调用类/对象的属性或者方法。
在java中只要看到首字母是大写的就是类!
8.
数据类型的分类
基本数据类型
数值型
- 整数型:byte(-128-127)、short(15次方)、int(31次方)、long(63次方)
- 浮点型:float(38次方)、double(308次方)
- 在实际开发中,我们一般使用 int、double
字符型
char:用单引号表示,Java 中使用16位的 Unicode 字符集作为编码方式,
表示方式
- 直接通过单个字符表示:'a'、‘9' 等;
- 通过转义字符表示:'\t'、'\n'、'\r'、'\'';
- 直接使用 unicode 表示:'\uxxxx'。
- 在 Java 中是没有表现多个字符的基本数据类型的,但是在 Java 中提供了一个 String 类,去表现字符串。
- 转义字符的使用:当你要打印无法列出的字符,比如换行符等等,要用转义字符,还有就是一些在字符串内要搞错的字符,总之是对编译器来说具有特殊意义的字符。
布尔型
- boolean:表示逻辑中的真和假,值只有 true / false。
在基本数据中,是可以进行类型之间的强制转化的,但是要注意,如果从低精度的转化为高精度时不会有问题,但是从高精度转化为低精度时,可能出现精度确实。
引用数据类型(类类型)。
9.