✨✨欢迎大家来到Celia的博客✨✨
🎉🎉创作不易,请点赞关注,多多支持哦🎉🎉
所属专栏:JAVA
目录
一、关于JAVA
1.1 JAVA语言简介
Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Java 语言源于 1991 年 4 月,Sun 公司 James Gosling博士 领导的绿色计划(Green Project) 开始启动,此计划最初的目标是开发一种能够在各种消费性电子产品(如机顶盒、冰箱、收音机等)上运行的程序架构。这个就是Java的前身: Oak (得名与Java创始人James Gosling办公室外的一棵橡树),但由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1995年代互联网的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布,并提出“Write once, Run anywhere" 的口号。
JAVA 发展历程上一些重要的里程碑:
- 1995年,Java正式发布。
- 1996年1月,Sun公司发布JDK1.0,Java语言有了第一个正式版本的运行环境。
- 1998年12月,Sun公司发布JDK1.2(代号Playground竞技场),Java技术体系拆分为3个方向,分别是面向桌面应用开发的J2SE(Java 2 Platform, Standard Edition)、面向企业级开发的J2EE(Java 2 Platform, Enterprise Edition)和面向手机等移动终端开发的J2ME(Java 2 Platform, Micro Edition)。
- 2004年9月,Sun公司发布JDK1.5(代号Tiger老虎),J2SE 1.5更名为Java SE 5.0(内部版本号1.5.0),成为Java语言发展史上的又一里程碑。
- 2006年11月,Sun公司宣布最终会将Java开源,并在随后的一年多时间内,陆续将JDK的各个部分在GPL v2(GNU General Public License v2)协议下公开了源码,并建立了OpenJDK组织对这些源码进行独立管理。
1.2 语言优势
1.2.1 简单性
在某种程度上,我们可以把JAVA看作是C/C++的一个”纯净版本“,在JAVA中,不存在头文件、指针、结构、联合、操作符重载等。
1.2.2 面向对象
在JAVA中,一切皆对象。比如人、房子,这些都算作一个对象,JAVA会将这些对象的多种特性一一描述出来,包括关于这些对象的信息操作方式,也会定义出来,统一封装在一个类中,统一管理。
1.2.3 分布式
Java有丰富的例程库,用于处理像HTTP和FTP之类的TCP/IP协议。Java应用程序能够通过URL打开和访问网络上的对象,其便捷程度就好像访问本地文件一样。
1.2.4 健壮性
JAVA采用的指针模型可以消除在访问内存时,重写和消除数据的可能性。JAVA对于数据类型的检查极其严格,避免了许多越界问题,以及数据类型不匹配而造成的不可控因素。在此之外,JAVA还可以检查出很多其他语言只能在运行中才能检测出的问题(比如死循环、逻辑语句常为真/假逻辑错误)。
1.2.5 安全性
JAVA适用于网络/分布式环境。在研发的时候,为了达到这个目的,研发团队投入了大量精力,以至于让JAVA构建的系统具有防病毒、防篡改的特性。
1.2.6 体系结构的独立
JAVA不同于其他语言依赖系统运行,JAVA的体系结构是独立出来的。编译器会根据JAVA代码生成一个特定的字节码文件,再按照指定规范生成一系列的机器指令,也就是说,只要有JAVA系统,JAVA文件就可以在任何系统上运行。
1.2.7 可移植性
与C/C++不同,在JAVA中,没有“依赖具体实现的地方”,JAVA对于所有的数据类型的大小做了明确的规定。比如在JAVA中,int类型永远是32位的整数,但是在C/C++中,int类型可能是16位,也有可能是32位。JAVA的这种规范大大提高了代码的可移植性。
1.2.8 解释性
Java为了实现与平台无关,自己维护了一套基于栈架构的指令集,Java源代码经过编译之后,字节码文件中的指令就是按照自己的指令集来组织的,但是在具体硬件环境中运行时,系统并不能识别,因为Java程序在执行时,Java解释器会逐条的将字节码文件中的指令翻译成CPU的指令集。
1.2.9 高性能
JAVA可以实现边解释便执行,随着在近些年来JVM的不断优化,比如:JIT、热点代码探测,可以让JAVA程序运行的效率大大提高,在某些场合甚至不亚于C/C++。
1.2.10 动态性
JAVA比C/C++更见具有动态性,能够适应不同的时代发展环境,库中可以自由添加方法、实例变量,而对客户端没有任何影响。
二、main方法
public class Text{
//修饰 类名
public static void main(String[] args) { //main方法
System.out.println("Hello,Celia!"); //输出Hello,Celia!
}
}
以上是一个简单JAVA程序的示例。
一般来讲,JAVA代码由以下三个部分组成:
- 源文件(扩展名为.java),源文件中有类的定义。类用来表示程序的一个组件,类中的内容必须在花括号中。
- 类,在类中会有一个或多个方法。方法必须在类的内部声明。
- 方法,在方法的花括号中编写方法所需要执行的语句。
注意:在一个源文件中只能有一个public修饰的类,且这个类的类名必须与文件名相同。
2.1 运行JAVA程序
JAVA是一门半编译型,半解释型语言。javac编译器会先把程序的源文件进行编译,生成一个字节码文件(.class为后缀),此文件与平台无关,仅仅是面向JVM(JAVA虚拟机)的。在这之后,JVM会将字节码文件转换成平台能够理解的形式,这样不论在什么平台上,JAVA代码都能够运行起来。
- 可以使用记事本或者IDEA(集成开发环境)来编写JAVA程序。(安装了JDK)
- 在cmd上使用命令来生成以.class为后缀的字节码文件。
javac xxx.java // 文件名
- 在cmd上使用命令来执行字节码文件。
java xxx // 只有文件名,没有后缀
2.2 关于JDK
- JDK(Java Development Kit):Java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsole、jstack等。
- JRE(Java Runtime Environment):Java运行时环境,包含了JVM,Java基础类库。是使用Java语言编写程序运行的所需环境。
- JVM:Java虚拟机,运行Java代码
三、注释
在JAVA中,注释主要分为以下三种:
//单行注释
/*多行注释*/
/**文档注释*/ //可以被Javadoc工具解析,生成一个以网页形式的程序说明文档
四、标识符
在整个程序中,为类名、方法名、变量所取的名字就是标识符。
- 可以包含字母、数字、下划线、$符号
- 标识符不能以数字开头,也不能是关键字
一些规范建议:
- 类名:每个单词的首字母大写
- 方法名:首字母小写,后面的每个单词首字母大写
- 变量名:同方法名
五、关键字
关键字是JAVA事先定义好的,有明确特殊意义的标识符。以下是一些常见的关键字: