Java是一种面向对象的编程语言,可用于Internet上的分布式环境,是一种易于阅读和理解的高级语言,Java广泛用于控制台GUI、Web、移动应用程序、游戏开发以及制作嵌入式系统除此之外Java还被用于为设备开发软件,Java不仅用于手机他还用于电视、洗衣机、空调等电子设备,由于Java在线表格、银行和购物成为可能。
Java是由James Gosling和San microsystems于1991年发明的一种基于计算机的编程语言,Java能够一次编写随处运行,最开始Java被称为Oak后来被命名为green、Java Coffee最后在1995年更名为Java。
Java共有三个版本标准版Java SE,这个版本它允许开发和部署到桌面、服务器,嵌入式开发和实施环境中使用的Java应用程序,JavaSE 包含了JavaWeb开发的类还为javaEE提供基础Java语言基础(JDBC、IO、网络通信、多线程)其次我们有企业版javaEE是在JavaSE基础上构建的他提供Web服务、组建模型、管理和通信API,可以用来实现企业级的面向服务体系结构,最后我们有微型版JavaMe,这个版本是在移动是设备和嵌入式设备上运行的应用程序提供一个健壮且灵活的环境。
Java是一种面向对象的编程语言基于C和C++语言,Java简化和改进编程Java文件中的错误使用编译器转化为字节码格式然后由Java解释器执行,整个Java代码运行在Java虚拟机上。
指的是Windows、Mac、Linux。
java程序可以在任意操作系统上运行
java为Windows,Mac和Linux操作系统提供了各个版本的JVM(JAVA虚拟机,全称:Java Virtual Machine)由JVM对Java代码进行翻译成该系统能够识的代码。
是Java程序的运行时环境,包含JVM和运行时所需要的核心类库。
我们先要运行一个已有的Java程序,那么只需安装JRE即可。
是Java程序开发工具包,包含JRE和开发人员使用的工具。
其中的开发工具:编译工具(javac.exe)和运行工具(java.exe)。
我们想要开发一个全新的Java程序,那么必须安装JDK。
JRE包含JVM和核心类库,JDK包含JRE和开发工具。
Java是一门面向对象的编程语言,面向对象(Object Oriented)是一种软件开发思想。它是对现实世界的一种抽象,面向对象会把相关的数据和方法组织为一个整体来看待而面向过程(Procedure Oriented)是一种以过程为中心的编程思想。面向对象可以不用严格按照顺序来执行每个动作。这是特点一。
Java摒弃了C++中难以理解的多继承、指针、内存管理等概念;不用手动管理对象的生命周期。这是特征二。
Java语言具有功能强大和简单易用两个特征,现在企业级开发,快速敏捷开发,尤其是各种框架的出现,使Java成为越来越火的一门语言。这是特点三。
Java是一门静态语言,静态语言指的就是在编译期间就能知道数据类型的语言,在运行前就能够检查类型的正确性,一旦类型确定后就不能再更改;静态语言主要有Pascal,Perl, C/C++,JAVA,C#, Scala等;相对应的,动态语言没有任何特定的情况需要指定变量的类型,在运行时确定的数据类型。比如有Lisp,Perl,Python、Ruby、JavaScript等;从设计的角度上来说,所有的语言都是设计用来把人类可读的代码转换为机器指令。动态语言是为了能够让程序员提高编码效率,因此你可以使用更少的代码来实现功能。静态语言设计是用来让硬件执行的更高效,因此需要程序员编写准确无误的代码,以此来让你的代码尽快的执行。从这个角度来说,静态语言的执行效率要比动态语言高,速度更快。这是特点四。
Java具有平台独立性和可移植性,Java有一句非常著名的口号:Write once,run anywhere ,也就是一次编写、到处运行。为什么Java能够吹出这种牛批的口号来?核心就是JVM。我们知道,计算机应用程序和硬件之间会屏蔽很多细节,它们之间依靠操作系统完成调度和协调,大致的体系结构如下
那么加上Java应用、JVM的体系结构会变为如下
Java是跨平台的,已编译的Java程序可以在任何带有JVM的平台上运行。你可以在Windows平台下编写代码,然后拿到Linux平台下运行,该如何实现呢?
首先你需要在应用中编写Java代码;
用Eclipse或者javac把Java 代码编译为.class文件;然后把你的.class文件打成.jar文件;
然后你的 .jar文件就能够在Windows 、Mac OS X、Linux系统下运行了。不同的操作系统有不同的JVM实现,切换平台时,不需要再次编译你的Java代码了。这是特点五。
Java能够容易实现多线程,Java是一门高级语言,高级语言会对用户屏蔽很多底层实现细节。比如Java是如何实现多线程的。从操作系统的角度来说,实现多线程的方式主要有下面这几种
在用户空间中实现多线程
在内核空间中实现多线程
在用户和内核空间中混合实现线程
而我认为Java应该是在用户空间实现的多线程,内核是感知不到Java存在多线程机制的。这是特点六。
Java具有高性能,我们编写的代码,经过javac编译器编译称为字节码(bytecode),经过JVM内嵌的解释器将字节码转换为机器代码,这是解释执行,这种转换过程效率较低。但是部分JVM的实现比如Hotspot JVM都提供了JIT(Just-In-Time)编译器,也就是通常所说的动态编译器,JIT能够在运行时将热点代码编译机器码,这种方式运行效率比较高,这是编译执行。所以Java不仅仅只是一种解释执行的语言。这是特点七。
Java语言具有健壮性,Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。这也是Java与C语言的重要区别。这是特点八。
Java很容易开发分布式项目,Java 语言支持Internet应用的开发,Java中有 net api,它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的 RMI(远程方法激活)机制也是开发分布式应用的重要手段。这是特点九。
Java小白,以上内容如有侵权联系我删帖。