java概述
什么是Java?
- Java语言吸收了C++语言的各种优点,具有功能强大和简单易用两个特征
- Java具有简单性、面向对象、分布式、安全性、平台独立与可移植性、动态性等特点
JDK的三大版本
有 JavaSE,JavaEE,JavaME三个版本
-
JAVASE 包含了Java核心类库,主要用来开发桌面应用
-
JAVAEE即企业版,包含SE,又有扩展部分(Servlet,JDBC等),主要用来开发分布式网络程序
-
JAVAME即微型版,包含了SE中部分类库,又有自己扩展部分,主要用来做移动类、嵌入式开发。
JAVA和c++的区别
java数据类型
在Java中共有八种基本数据类型,它们分别是以下几种类型:
数据类型 | 描述 | 占用字节 | 取值范围 | 默认值 |
---|---|---|---|---|
int | 整型,用于存储整数 | 4个字节 | -2147483648~2147483647 | 0 |
byte | Java中最小的数据类型 | 1个字节 | -128~127 | 0 |
short | 短整型 | 2个字节 | -32768~32717 | 0 |
long | 长整型 | 8个字节 | -263~263-1 | 0L |
float | 浮点型,用于存储带小数点的数字 | 4个字节 | / | 0.0f |
double | 双精度浮点型,用于存储带有小数点的数字 | 8个字节 | / | 0.0d |
char | 字符型,用于存储单个字符 | 2个字节 | 0~65535 | 空 |
boolean | 布尔类型,用于判断真或假 | 1个字节 | 仅有两个值,即true、false | false |
注:一个字节等于8位(bit)
JAVA语言采用Unicode编码标准,Unicode(标准码),它为每个字符制订了一个唯一的数值,因此在任何的语言,平台,程序都可以放心的使用。
面向对象概述
面向对象和面向过程的区别
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
面向过程
优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能是最重要的因素。
缺点:没有面向对象易维护、易复用、易扩展
面向对象
优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护
缺点:性能比面向过程低
面向对象三大特性
三大特征:封装、继承 、多态(抽象)
什么是多态机制?Java 语言是如何实现多态的?
多态分为编译时多态和运行时多态。其中编辑时多态是静态的(方法重载),主要是指方法的重载,它是根据参数列表的不同来区分不同的函数,通过编辑之后会变成两个不同的函数,在运行时谈不上多态。而运行时多态是动态的(方法重写,精髓),它是通过动态绑定来实现的,也就是我们所说的多态性。
Java实现多态有三个必要条件:继承、重写、向上转型。
多态的实现机制遵循一个原则:当超类对象引用变量引用子类对象时,被引用对象的类型而不是引用变量的类型决定了调用谁的成员方法,但是这个被调用的方法必须是在超类中定义过的,也就是说被子类覆盖的方法。