• 备战秋招--基础模块


    基础模块

    1、jdk和jre有什么区别?

    jdk是java开发工具包,其中包含了jre。jre是java运行时环境,如果只是运行java程序安装jre即可运行;如果还要开发java程序,则需要安装jdk,jdk中除了jre外还有编译java源码的编译器javac,除此之外还有很多java程序调试和分析的工具。

    2、==和equals什么区别?

    ==用于比较基本数据类型比较的是内容,比较引用数据类型比较的是引用数据类型的地址。

    equals用于比较引用数据类型,一般比较的是引用数据类型的地址,但是很多类如String、Integer中都重写了equals方法,所以在比较的时候比较的是引用数据类型的内容。

    3、两个对象的hascode()相同,则equals()也相同么?

    两个对象的hascode()相同只代表他们在散列表中存储的位置相同,一般来说对象在散列表中位置是通过对象的哈希值模除散列表的长度取余得到的,有可能出现不同对象出现在同一个位置的情况,故equals()不一定相同。

    4、final在java中有什么作用?

    final在java中如果修饰类则该类不同被继承,如果修饰方法则该方法不能被重写,如果修饰变量,则该变量叫做常量,并且必须初始化,初始化之后值就不能被修改。

    5、java中的Math.round(-1.5)等于多少?

    这是一个向上取证的函数,结果是-1

    6、String属于基本的数据类型么?

    String不属于基本的数据类型,它是引用数据类型,基本的数据类型有八个,分别是byte、short、int、long、float、double、boolean、char

    7、java中操作字符串都有哪些类?他们之间有什么区别?

    java中操作字符串的类有String、StringBuffer、StringBuilder。String声明的对象是不可变的,而buffer和builder可以在原有对象的基础上操作对象。其中buffer是线程安全的,builder是线程安全的,因此前者的性能低,后者的性能高。

    8、String str = “i” 和 String str = new String(“i”)一样么?

    不一样,前者虚拟机给它分配的内存在常量池,后者虚拟机给它分配的内存在堆空间。

    9、如何将字符串反转?

    使用StringBuilder和StringBuffer的reverse()方法。

    10、String类常用的方法有哪些?(5个)

    indexof()、charAt()、replace()、replaceAll()、split()、subString()、toUpperCase()、toLowerCase()、length()、trim()、getbyte()、equals()

    11、抽象类必须有抽象方法么?

    抽象类不一定有抽象方法,但是有抽象方法的类一定是抽象类。

    12、普通类和抽象类什么区别?

    普通类可以实例化,抽象类不能被实例化。普通类不能有抽象方法,抽象类中可以存在抽象方法。

    13、抽象类可以使用final修饰么?

    抽象类不可以被final修饰,因为抽象类的初衷就是为了被继承实现的,如果被fianl修饰了那么此类就不能被其他类继承了。

    14、接口和抽象类什么区别?(5个)

    接口是用来实现的,而抽象类是用来继承的;一个类可以实现多个接口,但是只能继承一个抽象类;抽象类可以有构造函数,而接口没有;抽象类可以有main方法并且可以启动,但是接口没有;抽象类的方法修饰符可以是任意的,但是接口的方法一般用public修饰。

    15、java中的io流分为几种?

    按功能分为输入流和输出流;按类型分为字节流和字符流;

    字节流是按8位输出以字节为单位输入输出数据,字符流是按16位输出以字符为单位输入输出数据

    飞书文档笔记:https://b9xiv51sal.feishu.cn/docx/doxcnbxE312SNWOg8iSN6MgkwKe

    16、BIO、NIO、AIO有什么区别?

    BIO是同步阻塞IO,优点是模式简单、使用方便,缺点是并发处理能力低;NIO是同步非阻塞IO,客户端和服务端通过通道通信,实现了多路复用;AIO基于时间和回调机制实现了异步非阻塞IO。

    17、Files的常用方法都有哪些?(9个)

    createFile()、creatDirectory()、write()、read()、delete()、exit()、move()、copy()、size()。

  • 相关阅读:
    Android移动安全攻防实战 ApkTool工具源码分析
    Jupyter notebook如何把一行里面所有代码都复制到pycharm里面,而不用一哥代码块,也就是一个cells得复制。直接全部或者多个复制代码
    使用Python中的正则表达式处理html文件
    文件系统管理--文件系统常用命令—挂载命令
    【翻译】Domain Enhanced Arbitrary Image Style Transfer via Contrastive Learning
    RabbitMQ的工作模式及原理
    【javascript】内部引入与外部引入javascript
    Java高级: 反射
    每日优鲜深陷“破产风波”,生鲜电商路在何方?
    【云上探索实验室-码上学堂】免费学习领好礼!
  • 原文地址:https://blog.csdn.net/weixin_51930617/article/details/126781777