初识Java
📚 目录
前言:
从今天开始,我将正式开启 Java 语言的学习与记录。作为一门应用广泛、生态成熟的编程语言,Java 在后端开发、大数据、企业级应用等领域都有着不可替代的地位。
本篇作为系列文章的前言,旨在帮助自己和读者快速认识 Java,理解它的核心优势与适用场景。一步一个脚印,从入门到熟练,慢慢沉淀,持续成长。
1. 什么是Java?
简史:
Java 语言源于1991年4月,Sun公司JamesGosling博⼠领导的绿⾊计(GreenProject)开始启动,此计划最初的目标是开发⼀种能够在各种消费性电⼦产品(如机顶盒、冰箱、收⾳机等)上运⾏的程序架构。这个就是Java的前⾝:Oak(得名于Java创JamesGosling办公室外的⼀棵橡树),但由于这些智能化家电的市场需求没有预期的⾼,Sun公司放弃了该项计划。随着1995年代互联⽹的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5⽉以Java的名称正式发布,并提出“Writeonce,Runanywhere"的口号。
Java 是一门简单、好用、通用性极强的程序设计语言。它最大的特点是不挑系统,Windows、Linux、macOS 都能跑,而且语法清晰、不容易崩溃,非常适合初学者。无论是网站后台、手机 APP、大数据处理,还是银行、电商系统、嵌入式都大量使用 Java 开发,是目前世界上最流行、工作机会最多的编程语言之一。
工作领域:企业级系统、Web开发、android平台应用、大数据平台开发等。
Java语言的特性:
1.简单性:Java相当于C++的纯净版本,Java中没有指针,没有头文件,结构、联合等,Java的开发环境远远超大多数语言开发环境。
2.面向对象:一切都可以是对象
3.分布式:Java有丰富的例程库,用于处理像HTTP和FTP之类的TCP/IP协议。Java应用程序能够通过URL打开和访问网络上的对象。
4.健壮性:于Java采用的指针模型可以消除重写内存和损坏数据的可能性,Java编译器能够检测许多在其他语言中仅在运行时才能够检测出来的问题。
5.安全性:使用Java可以构建防病毒、防篡改的系统。
6.可移值性:Java中数据类型有固定的大小。
7.解释性:Java实现与平台无关,自己维护了⼀套基于栈架构的指令集,Java源代码经过编译之后,字节码文件中的指令就是按照自己的指令集来组织的,但是在具体硬件环境中运行时,系统并不能识别,因为Java程序在执⾏时,Java解释器会逐条的将字节码文件中的指令翻译成CPU的指令集。
8.高能性:,近年来JVM也在不断的优化,比如:JIT(即时编译器),热点代码探测,让Java程序的执行效率大幅提高,在有些场合不亚C/C++。
9.多线性:可以带来更好的交互响应和实时行为。并发程序设计绝⾮易事,但是Java在这方面表现出色,可以很好的管理这个工作。
10.动态性:它能够适应不断发展的环境。
11.体系结构中立:编译器⽣成⼀个体系结构中立的目标文件格式,按照该中规范生成的文件,只要有Java运⾏时系统,这些编译后的代码就可以在许多处理器上运行。Java编译器通过⽣成与特定计算机体系结构无关的字节码指令来实现这⼀特性。
2. JavaSE和JavaEE是什么?
什么是javaSE?(JavaStandardEdition)
核心;Java的基础平台(必须先学,是所有 Java 开发的基础)
用途:桌面开发和简单服务器的应用
主要内容:基础语法、集合、IO、多线程、JVM
目标用户:一般Java开发者
JavaEE(JavaEnterprise Edition)
核心;javaSE的扩展版本(学完 SE 再学,依赖 SE 的核心能力)
用途:开发⼤型、分布式企业应⽤和Web应用
主要内容:企业级API,构建高可用、高并发的企业级应用(如Servlet、JSP等)
目标用户:企业级开发者
两者主要区别:
范围:JavaEE比JavaSE范围更加广泛
JavaSE 就像 “盖房子的基础技能”:比如会砌墙、铺地砖,是盖任何房子都必须掌握的核心能力。
JavaEE 就像 “盖高层写字楼的专业技能”:在掌握基础技能的前提下,还要学会装电梯、做消防系统、搭建中央空调、设计多楼层的水电布局 —— 这些技能是为了满足 “大型、复杂、高要求” 的建筑需求,对应企业级应用的高并发、高可用、分布式等要求。
复杂度:JavaEE更加复杂,学习过程更加艰辛。
规模:JavaEE适合大型应用,JavaSE适合中小型应用。
运行环境:JavaEE需要特点的应用服务器,JavaSE可以在标准的JVM上运行。
3. 初识Java程序main函数方法
我们学C语言的适合进入main函数的方法并在屏幕上打印hello world是这样的。
#include<stdio.h>intmain(){printf("hello world\n");return0;}
在我们的Java中:
publicclassTest{publicstaticvoidmain(String[] args){System.out.println("hello world");}}
都能够在屏幕上面打印我们的hello world
我们的main函数在Java中是由简写的:main
printf则是:sout
4. 注释
注释方法:
单行注释://注释内容
多行注释:/* 注释内容 /
文档注释:/* 文档注释 */(可以被javadoc⼯具解析,⽣成⼀套以网页文件形式体现的程序说明文档)
注意:
多行注释不能嵌套使用。
无论是多行注释还是单行注释都不参与编译
注释规范:内容准确,积极向上,使用中文,篇幅合理
5. 知道关键字和标识符
标识符:用户给类名、方法名、变量名
硬性规则:字母、数字以及下划线和$符号等。
类名::每个单词的首字母⼤写(大驼峰)
方法名字:首字母小写,后面单词字母大写。(小驼峰)
变量名:首字母小写,后面单词字母大写。
