Java面向面向对象有什么特性
Java的特性包括
封装
、继承
和多态
。
- 封装是将数据和方法封装在一个类中,对外提供公共的访问接口。
- 继承是一个类(子类)可以继承另一个类(父类)的属性和方法,并且可以扩展或修改这些属性和方法。
- 多态是指同一个类型的对象在不同的情况下表现出不同的行为。
Java中ArrayList和LinkedList有什么区别
- 数据结构来看,
ArrayList基于数组
实现,LinkedList基于链表
实现
。 LinkedList需要更多的内存空间,因为ArrayList每个节点存储的是实际数据,而LinkedList每个节点存储的实例,还有前后节点的位置。 - 从速度来看
查询
ArrayList更快,新增和删除
LinkedList速度更快
Java的抽象类和接口的区别
接口
:对事物的局部抽象,描述特征例如(会飞,会跳)
- 抽象方法的集合
- 一个类可以继承多个接口
- 不能有构造方法
抽象类
:对事物的整体抽象,呈现的概念例如(动物,植物,食物)
- 一个类中没有足够的详细来描绘一个具体的对象
- 一个类只能继承一个抽象类
- 可以有构造方法
JDK JRE JVM 的区别
JDK:Java Develpment Kit (java开发工具)
JRE:Java Runtime Environment (Java运行时环境)
JVM:Java Virtual Machine (java 虚拟机)
JDK包含了JRE,JRE包含了JVM
JDK是Java开发的工具包,是整个java的核心,包含了JRE,JAVA开发工具,java基础类库
JRE是java的运行环境,装载了JVM和JVM所需要的类库
JVM JAVA虚拟机是java跨平台的核心,JRE=JVM+Java系统类库。JDK=JVM+Java系统类库+编译、运行等开发工具