第1章 java语言的简介(阿里云大学在线视频0基础java10系列-编程入门)

阿里云大学视频:零基础学Java10系列一:编程入门

课时2:认识java (java的发展简介)

是现在最流行的编程语言之一,并且自身拥有庞大且完善的生态系统,可以实现你的任何需求,(但有些时候,java不擅长的部分会被其他语言所顶替)在国内而言,之所以java使用广泛,更多的主要原因,有许多大户都在使用java实现其各自的核心业务。

java是由sun公司开发的一套编程语言,其前身并不是java,当时有一个green项目,这个项目的核心功能在于使用 email控制家电产品的运行(智能家居),在80年代,email流行的时候,当时可以发送email是一件很牛的事情,最初sun公司打算竞争此项目,但是后来考虑到了c++的复杂性,所以利用c++开发出了一条oak(橡树)平台,  并且利用此平台进行项目的竞标,不过遗憾的是,这个平台失败了。但是这个时候世界上有一个最早的最牛X的软件公司诞生了:网景(第一家依靠技术上市的公司,)受到了当时发展最好的浏览器技术的启发,推出了一个hotjava的浏览器。后来,在1995年5月23日正式推出了java 的编程语言,同时推出了jdk1.0的开发包,(1996年的时候才开始可以提供陆续下载使用,到了1997年的时候传到了中国。)

sun(Stanford University NetWork)公司是一家从事于硬件开发的技术性公司,sun最早的代表性产品:小型机(被广泛的应用在了Amazon上。)最初电子商务是由IBM提出来的。后来由于网络经济发展的问题(任何的经济模式都一定会出现有瓶颈)但是,对于90年代末到2000年初的互联网低潮而言,这就是一个严重的伤害,而sun公司经历了这么一段发展之后并没有恢复往日的经济实力,终于在后来被oracle公司所收购,但是在oracle公司收购前最希望收购sun的实际上是IBM,IBM当年软件产品线上的技术基础,就是JAVA语言,(sun并没有通过java赚到多少钱,但是真正使用java赚到钱的只有IBM,后来依照版权欺诈的oracle。)

但是不管这些公司如何折腾,有一点已经达成了共识,java依然是一个稳定的,可靠的编程语言,可以承担大型服务器的程序开发任务,而从最初的时代,java语言也出现了一些技术的不同发展:

1.java的标准开发(j2se,javase:提供的是底层的支持,实现了桌面程序的开发;)

2.java嵌入式开发(j2me,javame:sun公司最早的时候就是想做嵌入式开发,但是这个嵌入式的发展被当年的Nokia给折腾够了,后来基本上就被Android所替代了,但是在后来由于oracle和Google的撕逼大战,导致Android的发展出现了瓶颈,后来Google干脆推出了自已的专属编程语言来进行Android开发(kotlin);)

3.java企业开发(j2ee,java ee):(主要是进行企业平台的搭建,现在已经主要的是开发互联网平台;)

 

课时3:java语言的特点

java之所以可以得到持续的发展力以及良好的生态系统,这完全取决于java的自身的技术特征。

1.是一个行业内通用的技术实现标准;

java本身也算是一个半开源的产品,所有很多的厂商得以接触到java的底层,这样使得java开发的更加的透明;

2.是一门面向对象的编程语言:这样就使得java语言语法结构更加方便开发者接受,这些面向对象的设计思想还在不断进行着扩充(不同的JDK版本);

3.提供有方便的内存回收处理机制;像一些编程语言里面需要明确的手工进行对象的回收与释放否则你的程序将无法正常提供支持,但是java可以提供有自动的内存回收操作,这样处理会更加方便一些,(这里面就牵扯到了一些优化方面的问题了);

4.避免了复杂的指针问题,而使用更加简单的引用来代替指针;指针虽然是一种高效的内存处理模式,但是其需要较强的逻辑分析而java在设计的时候充分的考虑到了这一点,所以开发者直接利用引用就可以简化指针的处理,而引用也是在所有初学过程之中最为难以理解的部分;

5.java是为数不多支持多线程编程的开发语言,这样就可以使得单位时间内,处理的性能得到提升(性能的提升并不是绝对的),多线程也是java开发之中最难以理解的部分,而正确的多线程处理才是提升处理性能的核心所在;

6.java提供有高效的网络处理能力,可以基于nio实现更加高效的数据传输处理;

7.java具有良好的可移植性,这样就可以提升一个程序的适用范围;

8.java语言足够简单;

 

课时4:java的可移植性

java语言之中最大的特点在于其可移植性的支持,所谓的可移植性指的是同一个程序可以在不同的操作系统之间任意的进行部署,这样就减少了开发的难度,在java里面如果想要实现可移植性的控制,那么主要是依靠的是jvm (java虚拟机)。java虚拟机是一个由软件和硬件模拟出来的计算机,所有的程序只要有java虚拟机的支持,那么就可以实现程序的执行,并且不同的操作系统上,会有不同版本的jvm存在,这样就可以实现移植性。

所有java程序的解释都要求放在java虚拟机上处理,所有的*.java的源代码程序最终都是需要经过编译后才可以使用的,但是编译完成的程序代码并不是一个绑定在某个具体操作系统统上的程序,而是一种通用性的程序,而这种通用性的程序就是jvm所能够识别的代码。

所有的程序并不是直接运行再操作系统上,而是通过jvm执行,这样一来肯定要比直接在操作系统上执行程序的处理速度要慢,先期这的确是一个问题,但是后来由于硬件技术的飞速发展。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值