zoukankan      html  css  js  c++  java
  • Java面试复习(纯手打)

    1、面向对象和面向过程的区别:

    面向过程比面向对象高。因为类调用时需要实例化,开销比较大,比较消耗资源,所以当性能是最重要的考量因素得时候,比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发。但是,面向过程没有面向对象易维护、易复用、易扩展。

    面向对象:面向对象易维护、易复用、易扩展。因为面向对象有封装、继承、多态性的特征,所以可以设计出低耦合得系统,使系统更加灵活、更加易于维护。但是,面向对象性能比面向过程低。

    2、Java语言有哪些特点?

      1.简单易学

      2.面向对象(封装,继承,多态)

      3.平台无关性(Java虚拟机实现平台无关性)

      4.可靠性;

      5.安全性

      6.支持多线程(C++语言没有内置的多线程机制,因此必须调用操作系统的多线程功能来进行多线程程序设计,而Java语言却提供了多线程支持)

      7.支持网络编程而且很方便(Java 语言诞生本身就是为简化网络编程设计的),因此Java语言不仅支持网络编程而且很方便)

      8.编译与解释并存

    3、关于JVM JDK 和JRE最详细通俗的解答。

      JVM

      Java虚拟机(JVM)是运行Java字节码的虚拟机。JVM有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,他们都会给出相同的结果。

    什么是字节码?采用字节码采用字节码的好处是什么?

      在java中,JVM可以理解的代码叫做字节码(即扩展名为.class文件),它不面向任何特定的处理器,只面向虚拟机。

      Java语言通过字节码的方式,在一定程度上解决了传统解释型语言执行效率低的问题,同时又保留了解释型语言可移植的特点。所以Java程序运行时比较高效,而且,由于字节码并不针对一种特定的机器,因此,Java程序无需重新编译便可在不同的操作系统计算机上运行。

  • 相关阅读:
    Linux系统中pssh系列工具的使用
    Linux软件包管理和磁盘管理实践
    Linux系统自动化安装之pxe实现
    Linux系统SSH服务基于key认证实践
    Linux系统文本处理之awk数组实践
    Linux访问控制列表
    Linux系统中SSH端口转发
    (转)python的range()函数用法
    Python 学习之list和Tuple类型
    List<String> 和 ArrayList<String>的区别
  • 原文地址:https://www.cnblogs.com/godoforange/p/11503575.html
Copyright © 2011-2022 走看看