Java是一个强类型语言,它允许扩展编译时检查潜在类型不匹配问题的功能。Java要求显式的方法声明,它不支持C风格的隐式声明。
Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
Java的特点:
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点;下面我们来具体介绍一下:
1、简单性
Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。
2、面向对象
Java语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。
3、分布性
Java设计成支持在网络上应用,它是分布式语言。Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,所以用户可以产生分布式的客户机和服务器。
网络变成软件应用的分布运载工具。Java程序只要编写一次,就可到处运行。
4、编译和解释性
Java编译程序生成字节码(byte-code),而不是通常的机器码。Java字节码提供对体系结构中性的目标文件格式,代码设计成可有效地传送程序到多个平台。Java程序可以在任何实现了Java解释程序和运行系统(run-time system)的系统上运行。
在一个解释性的环境中,程序开发的标准“链接”阶段大大消失了。如果说Java还有一个链接阶段,它只是把新类装进环境的过程,它是增量式的、轻量级的过程。因此,Java支持快速原型和容易试验,它将导致快速程序开发。这是一个与传统的、耗时的“编译、链接和测试”形成鲜明对比的精巧的开发过程。
5、稳健性
Java原来是用作编写消费类家用电子产品软件的语言,所以它是被设计成写高可靠和稳健软件的。Java消除了某些编程错误,使得用它写可靠软件相当容易。
Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。
6、安全性
Java的存储分配模型是它防御恶意代码的主要方法之一。Java没有指针,所以程序员不能得到隐蔽起来的内幕和伪造指针去指向存储器。更重要的是,Java编译程序不处理存储安排决策,所以程序员不能通过查看声明去猜测类的实际存储安排。编译的Java代码中的存储引用在运行时由Java解释程序决定实际存储地址。
Java运行系统使用字节码验证过程来保证装载到网络上的代码不违背任何Java语言限制。这个安全机制部分包括类如何从网上装载。例如,装载的类是放在分开的名字空间而不是局部类,预防恶意的小应用程序用它自己的版本来代替标准Java类。
7、可移植性
Java使得语言声明不依赖于实现的方面。例如,Java显式说明每个基本数据类型的大小和它的运算行为(这些数据类型由Java语法描述)。
Java环境本身对新的硬件平台和操作系统是可移植的。Java编译程序也用Java编写,而Java运行系统用ANSIC语言编写。
8、高性能
Java是一种先编译后解释的语言,所以它不如全编译性语言快。但是有些情况下性能是很要紧的,为了支持这些情况,Java设计者制作了“及时”编译程序,它能在运行时把Java字节码翻译成特定CPU(中央处理器)的机器代码,也就是实现全编译了。
Java字节码格式设计时考虑到这些“及时”编译程序的需要,所以生成机器代码的过程相当简单,它能产生相当好的代码。
9、多线程
在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:
1)、使用型构为Thread(Runnable)的构造子类将一个实现了Runnable接口的对象包装成一个线程,
2)、从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。
10、动态性
Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
11、平台独立性
Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。
Java编程语言需要学习什么?如何系统的学习Java编程语言?零基础学习Java技术开发常常会走弯路,有时候错误的学习路线会大大打击我们的自信心的,维系制定Java学习录下至关重要,下面小编和大分享一下Java个基点的学习注意事项,以及如何制定学习计划实现学习目标
一、想学习任何语言时,最重要的是打下坚实的基础,通常,很多人都接触过C和C++以及Java编程语言,这些编程语言虽然有自己的特点但是规则是相同的。在研究过程中,要多使用数据结构和实用的算法,并养成良好的编程习惯。
二、Java语言是可以很好地用于各种大型服务器的应用程序,但是在进行此研究之前,学习Java知识非常重要,其中主要包括Unix开发环境,常用的Unix命令,所以在学习软件开发的过程中,Unix命令和Java开发环境息息相关。
三、在学习Java软件开发的过程中,学习面向对象非常关键,而面向对象具有很好的通用性。其中,面向对象的功能主要是封装,继承和多态性等知识,掌握面向对象就可以在编程中发挥关键作用,所以在整个学习过程中都不能忽略面向对象编程基础的学习。
四、在学习Java语言的过程中,不能忽略对数据库的使用,在软件开发过程中,数据库可以发挥非常重要的作用,但是在学习数据库的过程中,许多人不知道应该掌握哪些知识,其实最重要的是要精通SQL语句,掌握添加,删除,检查和修改的技巧,并掌握数据库的核心技术,这对后续的软件开发学习有很大的帮助。
免责声明:内容来源于公开网络,若涉及侵权联系尽快删除!
“什么是Java?”Java,由Sun Microsystems公司于1995年5月推出,它是一种可以编写跨平台应用软件、完全面向对象的程序设计语言。
不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
“Java是怎么来的?”20世纪末,硬件领域出现了单片式计算机系统,这种系统价格低廉,立即引起了研究人员的注意,由于C++程序过于复杂和庞大,研究人员开发了一种称为Oak的面向对象语言。这是Java的雏形。
1995年,业界为了使单调的静态网页能够“灵活”起来,急需开发一种程序。这时,Sun公司想起了那个被搁置很久的Oak,并将Oak更名为Java,它语言精简,程序非常小,适合在网络上传输。
1995年5月,Sun公司正式发布Java。从此Java一路披荆斩棘,在经历20多年的发展之后依然长盛不衰,常年雄踞各大编程语言排行榜第一位,这也凸显了其在IT技术领域的绝对统治力。
“学了Java,我能干什么?”●程序员,穿梭在各种软件开发之间;
●架构师,参加大型项目的实现;
●网站开发,把若干个页面组成集合;
●游戏开发,在以前诺基亚还很流行的时候,手机游戏有90%以上都是Java开发的;
......
除此之外还可以做嵌入式设备、消费类电子产品开发、桌面程序等工作。
Java技术作为互联网的中流砥柱,其应用范围之多,就业岗位之多,堪称第一。
“Java的就业前景饱和了吗?”Java技术几乎无处不在,只要有使用到电子产品的地方,就会和Java挂钩。
近年,我国互联网发展尤为迅速,外卖、电商、短视频等各类产品层出不穷。其中,推动我国互联网飞速发展,网民规模持续增长离不开一批中国程序员在背后的辛苦工作。
1.Java在我国的招聘情况:
以某招聘网站为例:
2.Java程序员薪资范围分布图:
从上图我们可以看到,超过半数的资深程序员年薪在20万以上,并且有近 40% 的资深程序员年薪在 25- 50 万之间。
3.程序员也是一门“铁饭碗”
2018 年下半年开始,很多互联网公司大面积裁员,大家都说“资本寒冬”到来,但是从调查结果中可以看到90.9%的程序员“根本没在怕的”!
“Java的应用范围有多广?”Java能做的事情很多,涉及到编程领域的各个方面,从电子商务网站到 Android 应用,从科学应用到金融应用,从游戏到桌面应用等等。
● Android应用
打开你的安卓手机和任何一款App,他们都是使用Java语言开发的。
市场上见到的手机系统,例如MIUI,阿里云,乐蛙等,都是修改源代码再发行的。
● 金融业应用的服务器程序
因Java的安全性比较高,使其在金融服务业方面的应用广泛。
大部分银行和第三方交易系统均用Java开发前台和后台电子交易系统以及数据处理项目等等。
● Web应用
Java 语言在电子商务领域以及网站开发的领域都占据了一定的位置。开发人员可以用不同的框架来创建web项目。
时常被应用在各个政府部门如科学技术部、国家安全部、文化部等部门。
● J2ME应用
有一段时间,安卓上可用的游戏、软件几乎全部是用MIDP、CLDC,他们是J2ME平台的一部分。
● 大数据技术
Hadoop以及其他大数据处理技术很多都是用Java,例如Apache的基于Java的HBase和Accumulo以及 ElasticSearchas。
● 嵌入式领域
Java在嵌入式领域的发展有着广阔的空间。在这样平台上,只需130KB就可以很好使用Java技术。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)