Java开发基础
一、Java、C++、Python的区别
语言 | 编译型 | 解释型 | 自动垃圾回收 | 指针访问内存 | 重载 | 继承 |
---|---|---|---|---|---|---|
Java | √ | √ | √ | × | 方法 | 类单继承,接口多继承 |
C++ | √ | × | × | √ | 方法&操作符 | 多继承 |
Python | × | √ | √ | √ | × | 多继承 |
注:Python开发使用简单,在快速开发原型和小规模项目方面表现出色;Java适用于大型商业性质和企业级应用的开发
二、JDK & JRE & JVM(华为暑期实习技术面)
- JDK(Java Development Kit):是创建和编译 Java 程序的开发套件,是使用Java进行程序开发的基础。JDK除了包括JRE之外,还包括Java编译的工具包,如Javac;Java调试工具包:jdb等。
- JRE(Java Runtime Environment):是 Java 运行时环境,是运行已编译 Java 程序(Java字节码文件)所需的所有内容的集合,主要包括 Java 虚拟机(JVM)、Java 基础类库(Class Library)。
- JVM(Java Virtual Machine):运行 Java 字节码的虚拟机,是Java语言“一次编译,随处运行”的保证。(不同的操作系统有不同的JVM实现,可以直接运行编译好的字节码文件)
三者之间的关系为:
三、Java语言三大特性
- 封装:指隐藏对象的属性和实现细节,仅对外提供公共访问方式
- 继承:从已有的类中派生出新的类,新的类能继承已有类的数据属性和行为,并能扩展新的能力
注意:Java的继承中类继承只能是单继承(体现Java的简洁性),接口是多继承 - 多态:一个方法可以有多种实现版本,即“一种定义, 多种实现”,多态的实现需要满足以下条件:
- 继承,子类继承父类
- 方法重写:子类重写父类中的方法,具体重写规则参考链接: Java方法重写
- 父类引用指向子类对象