对于Java的基础知识,例如发展史,为什么需要Java等等等,就不说了;感觉没有什么必要说.这里我只说说Java当中用到的一些术语,例如什么是字节码,OOP等.基础的数据类型 变量 运算符 控制语句就不说了.
安全性和可移植性
安全性:Java运行是需要Java虚拟机来解读Java的字节码;并且Java虚拟机也限制了程序的一些不安全因素.
可移植性:由于有不同中来的操作系统,如果想要程序运行在不同的操作系统上那么就需要,针对不同操作系统开发出对应的软件;但是Java有Java虚拟机,只要安装不同操作系统上可以运行的虚拟机,就可以是你的Java程序在不同的操作系统上运行.也可以理解为,一次编译到处运行.
字节码
Java编译器输出的不是可执行代码,而是字节码.字节码是高度优化的指令集合,这些指令由Java运行时系统执行,Java运行时系统也成为Java虚拟机.
HotSpot为自己吗提供了即时编译器(JIT),人如果jvm包含JIT编译器,就可以根据要求一部一部分的将选择的字节码实时编译为可执行代码.而不是将整个Java程序一次性的全部编译为可执行代码.
servlet:服务器端的Java
servlet是在服务器上执行的小程序,servlet动态扩展了web服务器的功能;随着servlet的出翔,Java横跨了客户端/服务器的链接,servlet用于动态的创建发送到客户端的数据.
Java 的关键特性
简单性
安全性
可移植性
面向对象
健壮性
多线程
体系结构中立
解释执行
高性能
分布式
动态性
下面说说几个重点
1.简单性:
Java的设计目标之一是让程序员能够高效的学习和使用
2.面向对象
Java中的对象模型既简单又易于空战,而基本类型(例如整型)依然是高性能的非对象类型.
3.健壮性
因为Java是强类型语言,它在编译时检查代码,在运行时也检查代码.
分析程序失败的两个主要原因:内存管理错误和未处理的异常.
4.多线程
Java运行时系统为多线程同步提供了优美并完善的解决方案,能够创造出运行平稳的交互式系统.Java提供了易用的多线程方法,使得只需要考虑程序的特定行为,而不需要考虑多任务子系统.
5.分布式
Java针对internet的分布式唤醒而设计的,因为它能处理TCP/IP协议.Java还支持远程方法调用(RMI),这个特性允许程序通过网络调用的方法.
6.多态性
Java程序本身有大量的运行时信息,这些信息可以用于在运行时验证和解决对象访问问题.
OOP
oop是 封装 继承和多态
封装:
封装是将代码以及其他操作的数据绑定到一起的机制,并且保证代码和数据既不会受到外部干扰,也不会被误用.也可以理解为封装的一种方法是将它想象成一个保护性的包装盒,可以阻止在盒子外部定义的代码可以随意访问内部的代码和数据.
注意:Java中封装的基础是类.类是一种逻辑结构而对象是物理实体.
继承:
继承是一个对象获得另一个对象的属性的过程.继承它支持层次化分类的概念.我们可以通过继承来给子类(派生类)添加特有的属性或过程(方法).
多态:
多态是允许将一个接口用于一个通用动作的特性.具体使用那个动作与应用场合有关.
多态的概念经常被表达为”一个接口,多种方法”.
现在有的也说抽象也属于OOP
抽象:
面向对象编程的本质元素之一是抽象.人们可以通过抽象管理复杂性.例如,人们不回将一辆汽车想象成一些列相互独立的部分,而是将它想想成一个定义良好的具有自己独特行为对象.通过这种抽象人们可以驾驶汽车到杂货店,而不会因为汽车零部件的复杂性而不知所措.其实说这么多我感觉就是,将一些共有的属性向上抽象,从而得到一些共有的属性和行为.
抽象与接口的理解:
抽象:只是抽取一些事物的相同方法或属性.
接口:更像是一种标准,规定了你的类当中必须实现那些方法.