Java语言概述
- 是SUN(Stanford University Network,斯坦福大学网络公司)在1995年推出的;
- 是一种面向Internet的编程语言,已经成为web应用程序开发的首选语言。
Java的技术体系平台:
Java SE(标准版)、Java EE(企业版)、Java ME(微型版)、Java Card
Java的语言特性
Java是一门跨平台的纯面向对象的计算机语言!
简单理解面向过程和面向对象的区别:例如写一个实现张三打篮球,以及李四踢足球的程序?
- 面向过程:要一步步描述张三、篮球、和打篮球的动作;然后再重新描述李四、足球、以及踢足球的动作。
- 面向对象:创建人物、人运动的动作、运动的器械这三个对象,接着
实例化一个张三的对象,对象有一个打篮球的动作,器械是篮球;
实例化一个李四的对象,对象有一个踢足球的动作,器械是足球。
优点:面向对象能够更好的在抽象的层面来分析问题,在程序实现上能够极大地复用之前的代码。这些是面向过程编程很难实现的。
Java语言运行机制及运行过程
Java语言的特点
特点一:面向对象
- 两个基本概念:类、对象
- 三大特性:封装、继承、多态
特点二:健壮性 完善性
- 吸收了C/C++语言的优点,去掉了影响程序健壮性的部分(比如指针、内存的申请和释放),提供了相对安全的内存管理和访问机制。
特点三:跨平台性 JVM
- 通过Java编写的程序可以在不同的系统平台上运行。"Write once,Run Anywhere!"
- 原理:在Java应用程序和操作系统之间,有一个Java虚拟机(JVM),由JVM来负责Java程序在该操作系统中的运行。
Java两种核心机制
- Java虚拟机(Java Virtal Machine):JVM
垃圾收集机制(Garbage Collection):GC
- C/C++,由程序员回收,手动编写代码回收(优点:能够在内存不使用时快速回收,准确高效;缺点:容易出现BUG,例如忘记编写回收内存的代码?内存一直不回收。)
- Java,垃圾回收是自动的,开了一个系统级线程自动去检测哪些内存不用了然后回收掉(优点:自动的,意味着不会出现忘记回收;缺点:内存回收不够及时。)
一般的观点是:宁可回收不及时,但是一定要回收,使用自动的垃圾回收机制更加合适(选用Java)
JVM、JRE、JDK的关系
JDK(开发工具)> JRE(运行环境) > JVM(Java虚拟机)
Java语言环境的搭建
Mac OS下环境变量的配置:
- 如果你是第一次配置环境变量,可以使用“touch .bash_profile” 创建一个.bash_profile的隐藏配置文件(如果你是为编辑已存在的配置文件,则使用"open -e .bash_profile"命令)
输入如下配置,然后保存关闭该窗口
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home PATH=$JAVA_HOME/bin:$PATH:. CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:. export JAVA_HOME export PATH export CLASSPATH
- 使用"source .bash_profile"使配置生效
- 输入 echo $JAVA_HOME 显示刚才配置的路径
第一个Java程序
public class Test{
public static void main(String[] args){
System.out.println("Hello,Wrold!");
}
}
- Java源文件以“java”为扩展名。源文件的基本组成部分是类(class),如本类中的Test类。
Java应用程序的执行入口是main()方法。它有固定的书写格式:
public static void main(String[] args){ ... }
- Java语言严格区分大小写。
- Java方法由一条条的语句构成,每个语句以“;”(英文分号)结束。
- 括号都是成对出现的,缺一不可。