前言
Java拥有广泛的使用者,社区强大,值得学习。
Java的3大体系
Java SE(Java Standard Edition) 标准版,定位在个人计算机上的应用
Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。
Java EE(Java Enterprise Edition)企业版,定位在服务器端的应用
这个版本以前称为 J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。
Java ME(Java Micro Edition)微型版,定位在消费性电子产品应用
这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。
Java跨平台原理
Write Onece, Run Everywhere.Java是1次编译成功之后可以到任意有JVM虚拟机的平台运行。
JDK是什么?
我们需要使用javac.exe对.java的源码文件进行编译,也需要调用ava.exe去JVM执行.class的字节码文件。
那么javac.exe和java.exe还有JVM去哪里下载呢?它们3个都被包含在JDK中被发布出来。
Java跨平台运行机制
JDK、JRE、JVM联系?
开发环境使用JDK:代码编译+运行。
Java程序运行环境:安装JRE,Java代码可以运行即可。
JDK(Java Development Kit): 我们学习和使用Java必备工具,包括JAVA运行环境、基础类库、开发环境等;
JRE(Java Runtime Environment): Java程序运行环境,不包括开发工具。
JVM(Java Virtual Machine): 最终执行java字节码的
Java代码开发和运行流程
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
代码编写
public class HiJava{ public static void main(String[] args){ System.out.print("姓名:"); System.out.print(" 丽丽"); System.out.print("职业:"); System.out.print(" 学生 "); System.out.println("11111111111111111111"); System.out.println("1111 22222"); System.out.println("11111111 22222"); /* 在Python中1个制表符 代表4位 在Java中1个制表符补充前面的内容为8为; */ } }
编译.java文件得到.class字节码文件
D:java_code>javac HelloWorld.java
java自动调用JVM去执行字节码文件(注意不要加.class文件后缀)
D:java_code>java HelloWorld
Hi 这是一段Java程序。
Java开发环境
1.Java的public class和普通class的区别?
1个java包就是1个文件夹
1个包中可以有多个.java文件
1个.java文件中可以定义多个Class,并且1个Java文件中只能定义1个public class。
package ArryOpration.Test03; public class Test { } class A{} class B{} class C{}
public class的类名必须和文件名保持一致。
1个Java class编译之后就会产生1个.class文件
13220@DESKTOP-FHJES1H MINGW64 /d/java_code/src/ArryOpration/Test03 $ dir Test.java 13220@DESKTOP-FHJES1H MINGW64 /d/java_code/src/ArryOpration/Test03 $ pwd /d/java_code/src/ArryOpration/Test03 13220@DESKTOP-FHJES1H MINGW64 /d/java_code/src/ArryOpration/Test03 $ javac Test.java 13220@DESKTOP-FHJES1H MINGW64 /d/java_code/src/ArryOpration/Test03 $ ls A.class B.class C.class Test.class Test.java
1个类中只能定义1个名称为main的方法,这个main方法就是JVAN执行.class文件的入口。
public static void main(String[] args) {}