Java相关名词介绍
Java 2 标准版(J2SE) 桌面,java基础及其核心,主要开发桌面程序或控制程序。
Java 2 移动版(J2ME)移动端、手机,嵌入式开发。
Java 2 企业版(J2EE)企业版、服务器,web端开发。
JVM : 实现真正的可移植性,只要安装了JVM的地方都可以运行Java程序。
给予Java的平台:
构建工具:Maven、Jekins、Ant
应用服务器:Tomcat、Jetty、Jboss、Websphere、Weblogic
Web开发:struts2、spring、myBatis
Hadoop 大数据领域 、Android 手机端
Java动态性-->反射 ,大多框架基本都基于反射
JDK :Java Development Kit Java开发者工具
JRE: Java Runtime Environment Java运行环境
JVM : Java Virtual Machine Java虚拟机
JDK包含JRE包含JVM。Java、Javac编译运行Java程序,Javadoc可以生成doc文档,jar可以生成.jar的应用程序。
运行Java程序需要JRE环境,程序运行时会在JVM中运行,所以实现了Java的可移植性。java类初始化的时候调用java.lang.ClassLoader加载字节码文件。
JDK的目录
bin : 存放Java运行工具,如javac.exe、jar.exe
inclue : 因为Java是c、c++语言编写的,这里存放了很多需要引用的c库
jre : Java运行所需环境,包含JVM
lib : Java类库
src.zip : 资源文件,放了很多Java类的源代码
第一个Java程序 -- Hellow World
java大小写敏感
注意类名与文件名要一致
public class Hello{
public static void main(String[] args){ # 程序通过main方法执行,程序入口
System.out.print("Hello World!");
}
}
public关键字: 声明此函数为公有方法,其他类可以访问此主函数
static关键字: 告知编译器main函数是一个静态函数。也就是说main函数中的代码是存储在静态存储区的,即当定义了类以后这段代码就已经存在了。如果main()方法没有使用static修饰符,那么编译不会出错,但是如果你试图执行该程序时将会报错,提示main()方法不存在。因为包含main()的类并没有实例化(即没有这个类的对象),所以其main()方法也不会存存储在静态存储区,程序执行时无法会无法在内存中找到此方法。而使用static修饰符则表示该方法是静态的,不需要实例化即可使用
void关键字: main()函数的返回值为无类型
String[] args: 参数String[] args是一个字符串数组,接收来自程序执行时传进来的参数。如果是在命令行下,可以接受命令行参数
在terminal中生成字节码.class文件并运行
javac Hello.java # javac filename.java 编译成class文件
java Hello # java filename 运行class文件
Java程序运行机制
高级编程语言一般为两种类型,解释型和编译型(compile)这两种类型特点Java都有
编译型类似于将整个程序翻译为计算机可识别的文件并让其运行,比如cc++编译一次直接运行
解释型,即用一句解释一句,会浪费性能,比如网页 对速度要求不高 就可以用解释型
整个流程大致为:.java文件-->Java编译器(javac预编译)-->.class字节码-->解释器-->机器码
IDEA空项目设置
创建的空项目需要设置 Project Structure, 在 File --> Project Structure
Project SDK:选择自己的JDK
Project language level :设置为8