Java知识点总结——JAVA发展史和开发环境(详细版)

一、Java发展史与开发环境

1.1 Java语言的产生和发展

        1991年初,美国加州的Sun公司成立了一个以James Gosling为首的,名为Green的项目研发小组,试图编写一个面向家用电器市场的软件产品,项目小组首先以改写C++的编辑器为主,但发现不行,因为电器的处理器系统这些不同,后来需要设计一个与平台无关的开发环境,而C++复杂安全性差,因此Green项目开发组成员研发一种新的语言叫做Oak(橡树),(传说明明原因是因为窗外有一个橡树),但后来放弃了因为重名了,后来成员在咖啡店喝咖啡时候感到灵感,因为咖啡的原产地是Java(爪哇),直到现在“一杯飘香的咖啡”仍然是这个语言的标志。

        虽然原型很成功,但还是败给了竞争对手,一直到1993年7月,在互联网上流行的www浏览器很火,但是它是静态的,需要变成动态的,其解决方案需要一个安全可靠简练的语言,Oak完全符合,1994年,Java爆火,1995年,正式推出了Java语言,该语言具有安全、跨平台、面向对象、简单、适用于网络等特点、加上当时web的十分火爆,该语言顺便遍布全球各地,各大公司纷纷与Sun签订合同。2004年9月30日,J2SE1.5发布等等,2009年,甲骨文公司以74亿的价格收购了Sun公司,随后java由该公司管理

1.2 JAVA语言的特点

1、面向对象

面向对象其实就是现实世界模型的延申,现实中任何实体都可看为对象,对象包括属性和方法,对象的说明用属性来表达,而通过方法来操作对象,传统的过程式的变成语言是:算法+数据;面向对象的编程语言是:对象+消息。JAVA是一种纯面向对象的语言,支持封装性、继承性、多态性三个特点,Java无全程变量,绝大多数都是对象。

2、跨平台性

跨平台说的是软件可以在任何计算机环境下正常运行,这种形式是很方便的,Java自带的虚拟机很好地实现了这个特点,JAVA的源程序代码经过编译生成二进制的字节码和平台无关,直接在JAVA

虚拟机上解释执行。

3、可移植性

java编译后的代码可以在任何平台上解释运行,任何品种的计算机只要安装Java虚拟机就可以运行字节码文件,无需其他操作。

4、安全性

语言级、编译时、运行时、可执行代码安全性。

JAVA的数据结构都是封装后的完整对象。

编译时对写的代码经过检查,没有问题就可以生成java类,该类需要类加载器载入,并经过字节码校验器后才可以运行。

java没有指针、多重继承机制、全局变量、预处理器、不能采用地址计算的方法通过指针访问内存单元、大大减少出错可能性。

java提供内存自动回收机制、程序员不用花时间管理内存。

5、并发性

内置多线程技术,定义了一些类和方法来建立和管理用户定义的多线程。多线程特别有利于在程序中实现并发任务,Java提供了线程类Thread实现了多线程的并发机制。程序并发执行肯定会引起多个线程互斥访问临界资源的局面,因此并发系统对于此解决的关键就是临界资源的管理和分配问题,最关心的就是安全性和公平性,java解决了相关问题。

临界资源是指在多线程环境下同时被多个线程访问和操作的资源,如共享变量、共享数据结构、文件、数据库等。这些资源的并发访问可能导致数据不一致、竞争条件、死锁等问题,因此在多线程编程中需要采取措施来确保对临界资源的安全访问和操作。

6、分布式

java在构建一个分布式系统上有很多优势:API丰富,网络特性包丰富,数据结构丰富,多线程等等。

7、简单易用

对硬件要求低,采用了C语言大部分语法,学习起来简单,并且可以在很多记事本、等上边编写程序。

1.3java语言实现的机制

JAVA语言的执行模型是半编程和半解释性。

编写好的代码——标准字节代码——Java虚拟机解释执行。字节代码也是2进制文件,但不能直接在操作系统上运行,可以看成虚拟机的机器码,虚拟机把字节代码和操作系统硬件分开,使Java独立于平台。

虚拟机(VM)执行过程3个特点。

1、多线程 

2、动态连接

3、异常处理

我现在还看不懂,大家能看懂的尽量看。

下边介绍垃圾回收机制

C++写程序的时候要将不用的对象内存释放掉,如果不及时进行无用内存的回收,会导致系统崩溃。而java所有的实物都封装在类,需要时创建类的实例来处理看,这些动态的实例都储存在内存堆中。为了充分利用资源,java有一个系统级的线程,对内存的使用进行跟踪,该线程可在系统空闲时对不用内存回收。

代码安全检测

1、编译层,进行语法检查

2、平台层,配置策略,设定访问资源域、无需区分本地和远程

3、解释执行层、类装载器负责把类文件(.class)加载到java续集你,检查是否规范,然后再送到字节码校验器,判断是否有非法操作。

1.4 JAVA运行环境的安装与配置

这块我直接推荐一些别的博客了,各位观众老爷自己选择。

Windows下Java环境配置教程_windows java环境配置-CSDN博客

1.5 第一个Java应用程序

public class HelloWorld {
    public static void main(String args[])
    {
        System.out.println("111111");
    }
}
// class,关键字,定义一个类
// public访问控制修饰符,表示一个公共类,其他所有的类也可以访问这个类的对象
// HelloWorld类的名称自己决定
// public static void main() 定义了一个方法main(),它是java程序的执行入口{}以这个开始结束的
// main方法的参数是一个字符串数组args,虽然程序没用到但是也要列出来
// System.out.println,调用System类的out对象的println方法,向屏幕送一字符串信息并回车换行

运行结果:

注意事项:

源文件后缀是.java,其文件名要和包含main()方法的public类名完全一致,区分发小写。

各位有问题直接评论,感谢感谢。

  • 54
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值