简单的初步认识Java这门编程语言

JAVA的诞生:Java于1995年由SUN公司研发推出。

Java发展:因为其使用免费,众多开源插件和类库,先进的语法面向对象等特性,使得其受到开发人员的喜爱和发展。并且因为其免费开源,有许多的无名工程师、极客在为java进行完善和开发。

Oracle:SUN公司于09年被Oracle(甲骨文)收购,所以java现为Oracle旗下的编程语言。

兼容java的主流的数据库:MySQL、DB2、SQLServer、Oracle

跨平台的重要性:Windows是个人PC的主流操作系统,而服务器操作系统则有Linux、Unix、Windows 2008 Server、其他,其中Linux、Unix是主流;而且操作系统也有很多不同的版本。既然有如此多的操作系统,如果程序每个系统都要进行多一次开发的话,投入的人力、金钱、时间得多得多,无疑跨平台很重要。

Java优点:

1.免费的插件和框架:

Java有着众多的开源框架资源,主流的有Struts2、Spring、Hibernate、Spring MVC、JQuery等等,更多的框架和插件可以在网络上了解得到。

2.喜欢做规范不做实现:

Java只做语言上的规范标准,实现由开发人员、需要使用、开发java工具的公司或数据库公司之类的使用者进行实现。

3.让你做一个有经验的程序员:

由于java有着管家般的垃圾回收机制,不需要开发人员去进行垃圾处理,对于一些开发新手是非常好的一个机制,可以让开发人员省去多年摸索如何处理内存垃圾的时间;java会在编译时检查并消除错误,所以其健壮性优秀,写出来的程序不需要经常重启,稳定性好,毕竟一些开发新手还不能做到太优秀的程序,无疑也是让开发人员更快速更好的开发出稳定的程序。

4.跨平台:

Java之所以能做到一次编译到处运行,是因为其编译会产生一个中间码,然后可以去不同的平台转换成机器码。

5.语法先进,面向对象编程:

Java是面向对象编程语言,因为其特性更好的用代码模拟了现实生活中的事物,所以是目前较为先进的编程语言。

Java和其他编程语言的一些对比:

C/C++:C语言是面向过程编程语言其历史也比较久,C++则算是一门过渡语言不像java那样纯对象也不像C那样纯过程,这两种语言的主要缺点就是库不够丰富,资源不够多,语法不严格;优点在于面向过程在适合编写一些游戏、编写底层程序,适合科研方面的研究,其中Linux、Unix的内核就是C/C++编写的。

Java:开源的资源库比较丰富,适合商业软件,服务器软件开发。在WEB、桌面程序、手机程序、手持机、电视、机顶盒、卡片芯片都有java的身影。比较有名的游戏《我的世界》就是用纯java开发的,经典的Java书籍:<Java 编程思想> 一书上说了,java最主要得到发展、红火起来的其中一个优点就是解决了C/C++没能解决的程序设计的复杂性问题,Sun公司当时对Java的设计目标就是为程序员减少复杂性,减少开发健壮代码所需要所需要的时间以及困难。但是,并不是说C/C++语言就不好,任何的编程语言都有特长,比如C语言在硬件、单片机领域基本是使用的最广泛的语言,并且经久不衰。

Android:谷歌公司研发的编程语言,语法上基本是仿照的java。多用于开发手机、平板、手持机、车载系统和程序;由于目前大部分手机都是Android系统,所以Android近年发展迅速。

C#:Microsoft公司研发的编程语言,也是纯面向对象编程语言,是从以前j++的基础上演变过来的一门语言;多用于WEB、桌面程序、手持机系统和开发了WinPhone手机操作系统。是和java相似的一门语言,但是因为各种因素不如java受欢迎。但是要学习使用游戏引擎开发游戏的话,C#还是使用的比较多的。

编程并不需要想的太复杂深奥化,其实就是在把生活中的事物,用代码的语法去实现。

Microsoft(微软)是曾经的Sun公司现在的Oracle公司的主要竞争的对手可以说是死对头,曾经Sun公司因为java的版权把Microsoft多次告上法庭,虽最后庭外和解但是后来在Windows操作系统上就不具备java的运行环境了,所以现在都需要下载JDK手动配置:

JDK的下载地址:http://java.oracle.com

http://kaige123.com

JVM:Java虚拟机,给java程序构建虚拟环境,编译好的java程序需要在JVM虚拟机中运行并生成操作系统可执行的机器码

JDK:Java开发工具箱(包含开发环境、运行环境JRE、JVM虚拟机);

Jdk目录下较为重要的文件夹概述:

Bin:此文件夹有着所有的可执行程序: javac(编译程序),java(运行程序),javaw(窗口程序),javadoc(生成html文档),jar(将代码打成压缩包)

Db:里面存放着java提供的内嵌小型数据库,是1.6版本后才有的

Include:用于调用C/C++的库文件

Jre:java运行环境(虚拟机),其bin目录下调用着java和javaw程序

Lib:java的库文件,里面是现成的java代码资源

Javafx-src.zip:javafx源代码

Src.zip:jdk源代码

目前jdk较新版本为jdk1.8_112,jdk1.8_111;其中jdk1.8_111是jdk1.8中较为稳定的版本,虽然再过段时间1.9就要出来了。

Jdk下载地址:www.oracle.com/cn/  www.kaige123.com

Java程序的执行顺序:1.java程序>>>2.JVM/JDK>>>3.操作系统>>>4.硬件

Java的编译和运行流程:java的编译流程是先编写好一个后缀名为java的源文件,然后通过jdk工具箱里的javac程序进行编译成class字节码;接着再将字节码通过java虚拟机运行并生成操作系统可以执行的机器码,至此java的编译和运行流程就完成了

Java具有健壮性、跨平台原因:之所以java编写的程序可以跨平台运行,是因为java源代码文件在编译时会先产生一个class字节码,然后再到不同操作系统平台的java虚拟机中运行,并生成操作系统可以执行的机器码;java虚拟机就像扮演着翻译官的角色,将用java编写的语言翻译给Linux、Unix、MacOS、Windows等操作系统。

由于java编写的程序都是在虚拟机中运行,访问或调用内存、资源都需要通过虚拟机进行操作,不会直接访问资源,保证了资源的安全性;并且会在编译时检查并消除错误,大大减少了出现劣质代码的情况;再者虚拟机具有垃圾自动回收机制,不需要开发人员额外的去处理内存垃圾,也避免了由于内存碎片过多导致程序崩溃重启的现象,由此使得java编写的程序具有优秀的健壮性。

Applet、Javafx :是用来设计在网页中运行的程序,设计图形化动态界面的现在已被淘汰;目前WEB的图形化动态页面的设计被HTML5语言所代替。

可跨平台与不可跨平台编程语言的编译流程:

不可跨平台:例如c语言,c语言是直接编写一个后缀名为C的源代码文件,然后在dos界面或开发工具里直接编译成操作系统可执行的机器码(平台相关的可执行程序)

可跨平台:例如java语言,也是同样编写一个源文件后缀名为java,然后在dos用javac程序或在开发工具里编译成class字节码,接着再交给不同操作平台内的JVM虚拟机去运行生成平台相关的可执行程序。

Java简单的一个程序开发:

  第一步:先在控制面板中打开文件夹选项,点击查看,然后点去“隐藏已知文件类型的扩展名”的选项。

第二步:新建一个记事本文件,命名为Hello.java,右击点击编辑。

第三步:编写如下代码:

public class Hello{

public static void main(String[] ages){

System.out.println("Hello computer progarmming world!");

}

}

编写代码时要注意:

1.文件名必须要与类名一致

2.记住java是严格区分大小写的

3.代码内的符号必须是英文符号,不能是中文的

第四步:ctrl+s键保存

第五步:把javac程序的路径复制粘贴到Windows的运行引擎,或直接把javac程序拖进运行引擎,接着把刚编写好的源文件路径也复制粘贴进去或者直接拖进运行引擎(就是运行javac程序,然后给它传了一个参数,参数写的是一个路径),记住两个路径之间要用一个空格分开,回车或者点确定就可以进行编译,完成后会发现源文件目录下多了一个后缀名为class的文件。

第六步:然后用同样的方法把java程序拖到运行引擎空一个空格,把编译好的class文件也拖进去,按回车键运行;至此,一个简单的java程序就开发完成了。

输出结果:

要进行学习的话,最好是配置系统的环境变量,这样的方式只是临时使用的而已。

时间: 2024-10-09 15:46:19

简单的初步认识Java这门编程语言的相关文章

201671010116. 2016-2017-2《Java程序设计》初步认识Java

初步认识Java        鉴于自己是一名Java的初学者,对这门课程感到茫然,不知所措.但通过一周的学习,我对Java这门课程有了初步的的认识.Java虽然与C语言有诸多相似的地方,但相似不等于相同.相对于C语言,Java的使用更加广泛灵活,且适用于大型程序设计,而且Java是严格区分大小写的语言,书写时大小写不能混淆.        Java是一种计算机程序语言,可以编写嵌入在Web网页中运行的Java Applet小程序,也可以编写独立运行的Java Application应用程序,它

准备踏入IT编程的学子们,你们第一门编程语言选谁? Are You Ready? Go!

Are You Ready? Go! ——第一门编程语言选谁? 金旭亮 说明: 这篇文章是专门针对大学低年级学生(和其他软件开发初学者)写的,如果你己经是研究生或本科高年级学生,请将这篇文章转发给你的师弟或师妹,希望这篇文章能够帮助他们少走弯路,顺利地迈入软件开发的大门:如果您是一位有经验的软件开发者,或者是关注计算机教育的同行,也敬请提出宝贵意见. 发表看法请在本贴评论,或者在我的新浪微博“北理工教师金旭亮(http://weibo.com/jinxuliang)”上相互沟通. 本文仅代表个人

[转]学习你的第一门编程语言

学习你的第一门编程语言 投递人 itwriter 发布于 2016-11-04 12:24 评论(0) 有539人阅读 原文链接 [收藏] ? ? 英文原文:Learning Your First Programming Language 这篇文章摘自于我即将推出的新书<The Complete Software Developer's Career Guide>的其中一章. 好的,决定好想学什么编程语言了吗,现在就让我们开始学习吧. 所有你需要做的就是打开一本书,然后开始阅读,是这样的吗?

为有抱负的开发者推荐的最佳 10 门编程语言

编程是技术革新的核心,当今的编程语言有能力让开发者不再束缚他们的潜力来构建未来的技术. 如果你是一名具有前瞻性的开发者或者想成为一名具有前瞻能力的开发者,那么,是时候开始学习编程了,至少在最好的编程语言中选择一个,类似 Python, Swift, JavaScript, C#, C, Ruby, PHP, Haskell, Java, C++ 或者 Rust. 在这篇文章中,我们将会介绍排名前10的编程语言的功能性,易学程度,当前的需求/使用以及在预期的将来的需求.更多的需求,意味着更值钱.

如何根据你想要的生活选择第一门编程语言

程序员的生活轻松.工作机会众多,而且薪资也不错. 即使你不想从事程序员这个职业,学点编程仍然是没错的.尤其是对于那些网页设计.数字营销.企业和IT行业的工作岗位来说. 但是你应该学习哪门语言呢? Udacity网站制作了一张很棒的信息图(见下文),有助于你选择.但是我还想讲得更深入一点. 在它们那张信息图的基础上,我会根据你的愿望,分门别类地给出我的建议.比如,我会针对于旅行爱好者.设计师.IT人员或者其他职业的人员给出建议. 过去一年中,我面试了很多人,面试的岗位也不一样.我经常和其他也在招聘

201671010115 2016-2017-2《Java程序设计》对Java这门新课程的看法

本学期我们开始学习Java程序设计语言,刚开始拿到Java课本的时候,我内心是奔溃的,因为什么呢?是因为课本是我见过最厚的.上学期的时候,感觉C语言课本很厚,可是没有最厚,只有更厚.Java课本的厚度刷新了我所有学过看过书本厚度的新纪录. 老师采用了反转课堂教学法,说实在的,听到这个消息,我有点不知所措.反转课堂到底是怎样的?我们原来没有接触过,有点小迷惘.迷惘之余,更多的是期待,因为新挑战,意味着新机遇,可能这个课堂会是最适合我的,我会在这个课堂学到更多. Java不只是一种程序设计语言,而是

学哪门编程语言赚钱最多?

学哪门编程语言赚钱最多 随着互联网的持续发展和移动互联网爆发性增长,IT行业已经成为美国最赚钱的行业之一,其实也是中国所有行业当中最赚钱的行业之一.在美国,程序员的平均年薪接近10万美金,而在中国,由于还是发展中国家,薪水相对没有那么高,但是就过年其他行业而已,已经是比较高的了,而且,移动互联网的发展还会持续推进,计算机编程行业的平均年薪迎来了历史最高值. 不过Quartz(QZ.COM)网站的数据显示,拥有计算机技能的多少,也会体现在计算机程序员的收入上.根据美国著名智库布鲁金斯学会(Broo

简单的例子 关于Java内存管理的讲解

我想做的是,逐行读取文件,然后用该行的电影名去获取电影信息.因为源文件较大,readlines()不能完全读取所有电影名,所以我们逐行读取. 就这段代码,我想要在位置二处使用base64,然后结果呢? 两处位置都打印了,位置一得到base64,ok,没问题.当我在位置二想使用base64时,问题来了?onload队列的问题,位置二总是无法正确的获取到想要的base64,这个时候就可以考虑异步问题了. 在还没有接触到angular的时候,还真的不知道它到底有什么作用,直到我开始学习它,并且运用到它

有没有最简单的xml转换java类的方法

原文:有没有最简单的xml转换java类的方法 代码下载地址:http://www.zuidaima.com/share/1550463237098496.htm 手动编码太烦人了,每次新增一个java entity类都需要写一个解析器. 有没有最简单的xml转换java类的方法,布布扣,bubuko.com