这里写目录标题
什么是Java
- 面向编程和跨平台的语言
- 吸收了C++和C的优点,并且相比于C++使用简单方便和便捷
- 极好地实现了面向对象理论
jdk1.5之后的三大版本
- Java SE:允许开发和部署在桌面,服务器,嵌入式环境和实时环境中使用的Java应用程序
- Java EE:企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构和 Web2.0应用程序。
- Java ME:为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。
JVM、JRE和JDK的关系
- JVM:是Java的虚拟机,Java程序需要运行在虚拟机上,而在不同平台有不同的虚拟机,这是java可以跨平台的原因
- JRE:包括java虚拟机和核心类库的文件夹,核心类库主要是java.lang的包
- JDK:是提供给java开发人员使用的编译器,其中包括了JRE,javac.exe(编译器),javaw.exe,开发工具
- 所以三者的关系是JDK包含(JRE包含(JVM));
什么是跨平台性?原理是什么
- 跨平台性:主要是java程序编译以后,可以在各个平台上运行
- 实现的原理:因为java是通过JVM上运行的,所以各个系统只要下载各个系统相对应的JVM就可以运行java程序
Java语言有哪些特点
- 简单易学
- 面向对象
- 封装
- 继承
- 抽象
- 多态
- 跨平台性
- 安全性
- 支持网络编程
- 支持多线程
什么是字节码?采用字节码的最大好处是什么
- 字节码文件:java源代码通过编译器编译之后的文件(.class文件),它只面向虚拟机
- 好处:
- 一定程度上解决了传统解释型语言的执行效率
- java程序无序重新编译便可在多种不同的计算机上执行
- JAVA源代码–》编译器编译–》JVM可执行的JAVA字节码文件(.class文件)–》JVM–》JVM解释器–》程序运行
什么是Java程序的主类?应用程序和小程序的主类有何不同?
- 主类就是JAVA程序执行的入口,一个JAVA程序有很多类,但是只有一个类是主类。
- 区别:
- 应用程序:主类是指包含main()方法的类
- 小程序:是一个继承自系统类JApplet或Applet的子类,而且必须是public类。
Java应用程序与小程序之间有那些差别?
应用程序是从主线程启动(也就是main()方法)。applet小程序没有main方法,主要是嵌在浏览器页面上运行(调用init()线程或者run()来启动),嵌入浏览器这点跟flash的小游戏类似。
Java和C++的区别
- Java不提供指针来直接访问内存,程序内存更加安全
- Java是单继承,C++是多继承
- Java有自动内存管理机制,不需要程序员手动释放无用内存
总结
这个是我自己通过观看Java基础知识面试题来复习的,通过题目来回顾,如果有啥不准确的,请留言告诉我,十分感谢!