#简单性: java即C++的纯净版,没有头文件,没有指针运算,也不用分配内存,语法基于C #面向对象: 程序设计技术,万物皆对象 #可移植性: white once run anywhere。跨平台性是它的独特优点 #高性能: 及时编译,使某些代码的效率接近C++的效率 #分布式: java就是为网络分布式协议所设计的,它能处理不少TCP/IP协议上的东西,可经过URL打开网络上的资源,如同在本地打开个人电脑同样方便;java还支持远程方法调用,使得一些程序能经过网络去调用方法也是很是强大的 #动态性: 其自己不具备动态性,它的反射机制使其有了一些动态性,这是很是强大的,是C++没法实现的 #多线程: 多线程的使用可带来更好的交互行为和实施行为,身边例子:边打游戏边聊天。对线程的简单性也是java成为主流服务器端开发语言的主要缘由之一 #安全性: 适合于网络的分布式环境,java能构建一些防病毒,防篡改的系统,java吸取了C与C++的优势,并且去掉了他们影响程序健壮性的一部分,好比:关于指针和内存的管理;java程序几乎不可能形成程序计算机的崩溃,java系统在每次运行的时候都会对内存进行一些检查,确认它都是合法的,并且不会引发一些问题,哪怕出了问题,程序也能够经过异常机制处理 #健壮性: Java是一种健壮的语言,吸取了C/C++ 语言的优势,但去掉了其影响程序健壮性的部分(如:指针、内存的申请与释放等)。Java程序不可能形成计算机崩溃。即便Java程序也可能有错误。若是出现某种出乎意料之事,程序也不会崩溃,而是把该异常抛出,再经过异常处理机制加以处理
#JavaSE : 标准版(桌面程序,控制台开发......) Java se 之前称为J2SE。它容许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE是基础包,可是也包含了支持 Java Web 服务开发的类,并为 Java PlatformEnterprise Edition(Java EE)提供基础。 #JavaME : 嵌入式开发(手机,小家电......) 这个版本之前称为 J2ME。Java ME 为在移动设备和嵌入式设备(好比手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对能够动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就能够用于许多设备,并且能够利用每一个设备的本机功能。 #JavaEE : 企业级开发(web端,服务器开发......) 这个版本之前称为 J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通讯 API,能够用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。
[x] JDK : Java Development Kitjava
Java标准开发包,它提供了编译、运行Java程序所需的各类工具和资源,包括Java编译器、Java运行时环境,以及经常使用的Java类库等。web
[x] JRE : Java Runtime Environmenttypescript
Java运行环境,用于解释执行Java的字节码文件。普通用户而只须要安装 JRE(Java Runtime Environment)来运行 Java 程序。而程序开发者必须安装JDK来编译、调试程序。安全
[x] JVM : Java Virtual Machine服务器
Java虚拟机,是JRE的一部分。它是整个java实现跨平台的最核心的部分,负责解释执行字节码文件,是可运行java字节码文件的虚拟计算机。全部平台的上的JVM向编译器提供相同的接口,而编译器只须要面向虚拟机,生成虚拟机能识别的代码,而后由虚拟机来解释执行。网络
public class HelloWorld { public static void main(String[] args){ System.out.println("Hello World"); } }
可能会遇到问题:多线程
1.每一个单词的大小写不能出现问题,java是大小写敏感的jvm
2.尽可能使用英文分布式
3.文件名 和 类型必须保证一致,而且首字母大写工具
4.符号使用了中文
定义: #编译型语言 把作好的源程序所有编译成二进制代码的可运行程序。而后,可直接运行这个程序。 #解释型语言 把作好的源程序翻译一句,而后执行一句,直至结束! 区别: #编译型语言 执行速度快、效率高;依靠编译器、跨平台性差些。 #解释型语言 执行速度慢、效率低;依靠解释器、跨平台性好。
#java是编译型仍是解释型? 1.你能够说它是编译型的。由于全部的Java代码都是要编译的,.java不通过编译就什么用都没有。 2.你能够说它是解释型的。由于java代码编译后不能直接运行,它是解释运行在JVM上的,因此它是解释运行的,那也就算是解释型的了。