二、JAVA的特点
1.1 JAVA语言特点说明
1.1.1 :跨平台
跨平台的意思是软件在不受计算机硬件和操作系统的约束而在任意计算机环境下正常运行;不需要针对不同的电脑配置和环境单独编写基于这个系统的代码;
java语言中自带的虚拟机很好的实现了跨平台性,JAVA源程序代码经过编译后会生成二进制的字节码是与平台无关的,但是可以被JAVA虚拟机识别的一中机器码指令。Java虚拟机提供了一个字节码到底层硬件平台及操作系统的屏障,所以JAVA 语言是一次编译,多处运行;
1.1.2 : 面向对象
面向对象是指以对象为基本粒度,其中包含属性和方法,对象的说明用属性表达,通过方法等来操作这个对象;面向对象技术这个概念使得应用程序变得简单易用,节省代码;Java就是一种面向对象的语言; 万物皆对象~
1.1.3:安全性
没有指针
Java没有指针概念,通过指针可以引用一些任意的内存位置来进行未经授权的读写操作。Java不使用指针这个概念,所以用户不能指出其他程序或者系统中应用程序的任何内存地址;
特定关键字
访问的特定关键字是Java安全性的另外一个优点;访问关键字可以控制方法以及属性等的调用权限。(后面章节详解)
编译时检查
Java严格的编译器检查规则让其更加安全,例如一个未经授权的方法尝试访问私有变量,那么编译时就会报错。JVM在编译时会捕获尽可能多的错误,以避免系统崩溃;
异常处理
Java有异常处理概念,在运行时可以通过异常处理来捕获不期望的结果;并先程序员报告他捕获的错误,程序员必须纠正他,直到它不允许我们运行代码,这个功能为Java提供了更多的安全性;
字节码验证器
第一个Java设计适合嵌入式系统,所以Java的可用性绝对是网络最广泛的,字节码允许程序员一次编码并在任何地方运行;
加密安全
当我们从其他网络获取代码时,我们应该保留这个代码到达的位置的细节,对于这个Java.security.SourceCode类将在Java中有所帮助。他讲保留源信息,他将检查提供加密安全性的数字签名;
Java沙箱
java沙河是apple运行的限制区域,这些小程序无法获取系统资源,对于本地代码,使用资源则没有限制
Java安全管理器
这将保护策略文件中的权限不被过度写入,权限是由安全管理检查类的属性,他只管理由授权访问的系统资源,他也控制套接字链接。JAVA安全管理器允许程序员为小型构造提供安全性
Java类加载器
Java类加载器保证不受信任的类不能伪装成可信类。其实Java类加载器是通用名。许多类加载器存在于JVM中。每个类加载器为类保留名称空间。它们为加载的每个类赋予不同的名称。所以不信任的类不会像受信任的类。他们不能欺骗JVM作为受信任的。
Java类加载器,Java安全管理器,Java字节代码验证器是使Java安全语言的三个主要重要功能。