首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏宇宙之_一粟

    Java高频面试题 -- 静态

    由于它不是在Java中按对象定义的,因此可以节省内存。 2. 为什么用Java创建静态变量不是一个好习惯? 答:静态变量是类的所有对象共有的。 如果创建了新对象,则无需测试静态变量的值。 Java中静态方法的目的? 答:Java提供了静态方法的功能来在类级别创建行为。 静态方法是类的所有对象所共有的。 我们不需要创建类的任何对象来调用静态方法。 为什么在Java中将main方法标记为静态方法? 答:Java中的main方法被标记为静态,因此JVM可以调用它来启动程序。 如果main方法不是静态的,那么Java进程将调用哪个构造函数? 因此,在Java中将主要方法标记为静态是众所周知的约定。 但是,如果我们去除static,那将会有歧义。 Java进程可能不知道要调用哪个类的方法来启动程序。 答:不,从Java 7开始,您需要main()方法来执行程序。 在Java的早期版本中,有一种解决方法可用于使用静态块执行。 但是现在这个差距已经缩小。 7.

    70221发布于 2020-10-26
  • 来自专栏宇宙之_一粟

    Java高频面试题----继承

    Java中所有类的父类是什么? 4. 为什么Java不支持多重继承? 5. 在面向对象的概念中,“组成”是什么意思? 答:组成也称为has-a"关系,在组合中,"has-a"关系意味着两个类。 为什么Java中没有指针? 8. 为什么Java中没有指针的概念,然而我们还是会得到空指针异常NullPointerException? 9. super关键字的作用? 答:不可以,Java不允许在构造函数中一起使用super()和this()方法。 根据Java规范,super()或this()方法必须是构造函数中的第一条语句。 11. Java中的对象克隆是什么意思? 答:Object.clone()方法用来在Java中创建一个对象的拷贝。它的行为就像一个复制构造函数。

    58021发布于 2020-10-26
  • 来自专栏刷题笔记

    Java高频面试题笔记

    本文链接:https://blog.csdn.net/shiliang97/article/details/103171069 额,java学校的课刚结课,发现我啥也不会,正好,学习一下java的面试常考题

    44210发布于 2019-12-03
  • 来自专栏宇宙之_一粟

    Java高频面试题——基础篇

    Java高频基础面试题 1. JDK和JRE有什么区别? JDK:Java Development Kit的简称,Java开发工具包,它提供了Java程序的开发环境和运行环境,同时包括编译Java程序的编译器和调试器。 JRE:Java Runtime Environment的简称,Java运行环境,JRE提供Java程序运行所需的环境(运行库和JVM,不包括编译器),注:JDK工具包括JRE。 2. 什么是Java Virtual Machine(JVM)? Java Virtual Machine(JVM)是一个抽象的计算机,能够执行Java字节码。能针对不同的软件和硬件提供不同的JVM。 Java 编译器将 Java 程序编译成虚拟机能够识别的二进制代码,这种代码称为字节码(Bytecode)。

    42831发布于 2020-10-26
  • 来自专栏波波烤鸭

    Java面向对象高频面试题

      金三银四正是跳槽涨薪的好时节,波哥给大家整理了很多面试高频的问题,助力大家找到更好的工作哦,点点关注,感谢支持。 面向对象面试题 1.谈谈你对面向对象思想的理解? java中不支持多继承,一个类最多只能有一个父类。而在java中多继承是通过接口实现的。 (-IntegerCache.low)]; // 否则创建一个新的Integer对象 return new Integer(i); }   提醒:越是貌似简单的面试题 name.equals("")){ } } } 9. switch可以使用的数据类型 JDK5之前:byte,short,int,char JDK5之后:Java中引入了枚举类型 属性只能是常量 * 方法只能是抽象方法 * JDK1.8之后可以有 default和static方法 */ interface B{ public final int a = 9;

    55430编辑于 2022-04-13
  • 来自专栏宇宙之_一粟

    Java高频面试题----面向对象篇

    Java中,定义为对象中的实例变量的对象引用的默认值是什么? Java中所有的实例变量的对象引用默认为null。 4. 为什么需要构造器? 默认情况下,Java为每个对象提供默认的构造函数。如果我们重载了一个构造函数,那么必须实现这个默认的构造函数。 5. 为什么Java类中需要默认构造器? 答:如果没有其他构造器定义的话,Java类默认构造器都是自动创建的无参构造器。 Java规范声明,如果类中没有重载的构造函数,它将提供一个默认的构造函数。 Java中的构造器返回的值是什么? 答:当我们用Java调用构造函数时,它返回由它创建的对象。这就是我们用Java创建新对象的方式。 7. 构造函数可以继承吗? 为什么Java类中需要默认构造器? 如果没有定义其他构造函数,则默认构造函数是Java会自动生成的无参构造函数。 根据Java规范,如果类中没有重载的构造函数,它将提供一个默认的构造函数。

    57041发布于 2020-10-26
  • 来自专栏专注于java领域技术分析

    阿里P9整理Java 高频面试题聊一聊 JUC 下的 LinkedBlockingQueue

    本文聊一下 JUC 下的 LinkedBlockingQueue 队列,先说说 LinkedBlockingQueue 队列的特点,然后再从源码的角度聊一聊 LinkedBlockingQueue 的主要实现~

    54720发布于 2020-07-31
  • 来自专栏Java经验之谈

    Java高频面试题- 每日三连问?【Day9】 — 消息队列篇二

      在一般网络环境下,都存在一定的网络延迟、网络抖动,网络问题导致消息重复发送的情况是难以避免的,毕竟网络环境无法预知。

    61530发布于 2021-08-16
  • 来自专栏宇宙之_一粟

    Java高频面试题——基础篇(继续更新)

    Java高频面试题——基础篇 3. JVM会分配哪些不同类型的内存区域? 在Java中,JVM将内存分配给不同的进程,方法和对象。 程序计数寄存器:该存储区包含当前正在执行的Java虚拟机指令的地址。 本地方法栈:该区域保留用于应用程序中使用的所有本机方法。 4. 什么是JIT? 即时编译器(Just In Time,也称为JIT编译器)用于提高Java的性能。 默认情况下启用。 它是在执行时(而不是更早)完成的。 Java通过将JIT编译器包含在JVM中来普及其使用。 Java平台与其他平台有何不同? Java是与平台无关的语言。 Java编译器将Java代码转换为可由JVM解释的字节代码。 JVM为世界上几乎所有流行的平台编写。 Java字节码可以相同的方式在任何受支持的平台上运行。 与其他语言一样,需要为特定平台编译的库才能运行。

    47541发布于 2020-10-26
  • 来自专栏从流域到海域

    Java面试高频面试题汇总 IO专题

    Java中的I/O模型 在JDK1.4之前,基于Java的所有socket都是使用阻塞I/O(BIO),JDK1.4提供了非阻塞I/O(NIO)功能,虽然称为NIO但实际上底层模型是I/O多路复用, 在Java1.4中引入了NIO框架,对应java.nio包,提供了Channel,Selector,Buffer等抽象。它支持面向缓冲,基于通道的I/O操作方法。 AIO(Asynchronous I/O):AIO也就是NIO 2,与Java1.7中引入,它是异步非阻塞的IO模型。

    62130发布于 2020-09-18
  • 来自专栏从流域到海域

    Java面试高频面试题汇总 锁专题

    Java的ReentrantLock和synchronized都是可重入锁。 公平锁和非公平锁 公平锁(Fair) 加锁前检查是否有排队等待的线程,优先排队等待的线程,先到先得。 Java中的synchronized是非公平锁,ReentrantLock默认的lock方法采用的是非公平锁。 Java读写锁有对应的接口java.concurrent.locks.ReadWriteLock,也有具体的实现ReentrantReadWriteLock。 共享锁和独占锁 java并发包提供的加锁模式分为共享锁和独占锁。 独占锁 独占锁模式下,每次只能有一个线程能持有锁,ReentrantLock就是以独占方式实现的互斥锁。 java的并发包提供了ReadWriteLock,读-写锁。它允许一个资源可以被多个读操作访问。

    1.1K30发布于 2020-09-18
  • 来自专栏项目文章

    15道大厂Java高频面试题(一)

    1、JVM、JRE、JDK之间的关系 JVM(Java Virtual Machine) 定义:JVM 是 Java 虚拟机,它是 Java 程序能够在不同平台上运行的基础。 类库:包含了 Java 程序运行所需要的类和 API,如 java.lang、java.util 等。 其他支持文件:如配置文件、支持 Java 程序运行的其他资源等。 JDK(Java Development Kit) 定义:JDK 是 Java 开发工具包,是开发 Java 应用程序所必需的工具集。 组成: JRE:包括了 JVM 和 Java 类库,提供 Java 程序的运行环境。 开发工具:包括 Java 编译器、调试器、打包工具等,用于开发、测试和部署 Java 应用程序。 9、⾯向对象和⾯向过程的区别 面向对象和面向过程是两种不同的编程范式。它们的主要区别如下: 基本概念 面向过程:强调通过函数或过程来操作数据,主要关注过程、步骤和函数。

    72010编辑于 2024-11-17
  • 来自专栏呱牛笔记

    腾讯 Java 高频面试题详解总结(转)

    SingletonDemo3 instance=new SingletonDemo3();  5     }  6        7     private SingletonDemo3(){}  8        9      这种方式的特点是实现简单,而且效率较高,但是它无法解决循环引用的问题,因此在Java中并没有采用这种方式(Python采用的是引用计数法)。 为了解决这个问题,在Java中采取了可达性分析法。 在《Java编程思想》中对于final关键字有这样的介绍: 根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。 参考资料:  《Java编程思想》 ▲ 14 Java 线程和操作系统的线程是怎么对应的?Java线程是怎样进行调度的? 它是java中唯一不需要new 就可以产生对象的途径。以String s="abce";形式赋值在java中叫直接量,它是在常量池中而不是象new一样放在压缩堆中。

    66920编辑于 2023-05-02
  • 来自专栏宇宙之_一粟

    Java高频面试题----static关键字

    由于它不是在Java中按对象定义的,因此可以节省内存。 2. 为什么在Java中创建静态变量不是一个好习惯? 答:静态变量是类的所有对象共有的。 如果创建了新对象,则无需测试静态变量的值。 讲一下Java静态方法的作用? 答:Java提供了静态方法的功能,可以在类级别创建行为。 静态方法是类的所有对象所共有的。 我们不需要创建类的任何对象来调用静态方法。 为什么在Java中将main方法标记为静态方法? 答:Java中的main方法被标记为静态,因此JVM可以调用它来启动程序。 如果main方法不是静态的,那么Java进程将调用哪个构造函数? 因此,在Java中将主要方法标记为静态static是众所周知的约定。 但是,如果我们去除static,那将会有歧义。 Java进程可能不知道要调用哪个类的方法来启动程序。 因此,此约定有助于Java进程识别类中作为参数传递给Java进程的程序的启动代码。 5. 在什么情况下我们使用静态块? 有时,有一个具有静态成员变量的类。 这些变量需要一些复杂的初始化。

    85541发布于 2020-10-26
  • 来自专栏项目文章

    15道大厂Java高频面试题(二)

    Java中,这意味着将对象的状态转换成字节流,以便可以将其持久化到磁盘或通过网络发送到其他JVM实例。要使Java对象可序列化,该对象的类需要实现java.io.Serializable接口。 中的包 Java中的包 在Java中,包(Package)是一种将类和接口组织在一起的方式,以便于管理大型项目中的代码。 从Java 9开始,字符串的存储机制有所变化,引入了一种新的压缩机制,称为String Deduplication。这种机制旨在减少相同字符串实例的数量,节省内存。 9、String为什么是不可变的? 保存字符串的数组被 fina1 修饰且为私有的,并且 string 类没有提供/暴露修改这个字符串的方法。 中的一个非常重要的方法,它在java.lang.Object类中定义,并被许多Java类继承。

    74020编辑于 2024-11-26
  • 来自专栏MySQL入坑记

    JAVA高频216道面试题+答案!!面试必备

      写在前面,这篇内容是从一位江湖高手那里得来的,可以说是我看到过的最全的一篇JAVA语言面试题+答案了!!哈哥花了一通宵整理了出来,包括每题的答案和有深度的扩展文章推荐。 Java 中操作字符串都有哪些类?它们之间有什么区别? 8. String str="i" 与 String str=new String("i")一样吗? 9. 如何将字符串反转? 10. 原因有三个:第一,我想为每一个为梦想时刻准备着的“有心人”,尽一份自己的力量,提供一份高度精华的 Java 面试清单;第二,目前市面上的面试题不是答案不准确就是内容覆盖面太窄,所以提供一份经典而又准确的面试题是非常有必要的 或许这份面试题还不足以囊括所有 Java 问题,但有了它,我相信你一定不会“败”的很惨,因为有了它,足以应对目前市面上绝大部分的 Java 面试了,因为这篇文章不论是从深度还是广度上来讲,都已经囊括了非常多的知识点了 String str="i"的方式,Java 虚拟机会将其分配到常量池中;而 String str=new String(“i”) 则会被分到堆内存中。 9. 如何将字符串反转?

    2.4K42发布于 2021-10-13
  • 来自专栏宇宙之_一粟

    2020Java高频面试题--Java知识点汇总

    Java高频面试题 1. JDK和JRE有什么区别? JDK:Java Development Kit的简称,Java开发工具包,它提供了Java程序的开发环境和运行环境,同时包括编译Java程序的编译器和调试器。 Java平台与其他平台有何不同? Java是与平台无关的语言。 Java编译器将Java代码转换为可由JVM解释的字节代码。 JVM为世界上几乎所有流行的平台编写。 Java编译器javac编译Java代码,而JVM java运行该代码。 javac HelloWorld.java java HelloWorld 7. Java中的类加载器是怎么工作的? 你认为用于main方法的“ main”是Java中的关键字吗? 不,main只是方法的名称。 一个类文件中可以有多个具有相同名称main的方法。 它不是Java中的关键字。 9.

    71451发布于 2020-10-26
  • 来自专栏小闫笔记

    Mysql高频面试题

    更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』 9、MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区 别? 1.

    1.2K10发布于 2020-02-19
  • 来自专栏小闫笔记

    Redis高频面试题

    当然,面试中,Redis也深受面试官喜爱,下面就为大家整理汇总Redis的高频面试题,希望能给乡亲们一点帮助。 1、什么是 Redis?简述它的优缺点? 9、Redis 集群会有写操作丢失吗?为什么? Redis 并不能保证数据的强一致性,这意味这在实际中集群在特定的条件下可能会丢失写操作。 10、Redis 集群之间是如何复制的? 写一下 java 代码实现? 过期策略: 定时过期(一 key 一定时器)。 惰性过期:只有使用 key 时才判断 key 是否已过期,过期则清除。 定期过期:前两者折中。

    1.4K30发布于 2020-02-19
  • 来自专栏前端技术分享小合集

    前端高频面试题

    CSSSprites(精灵图),将一个页面涉及到的所有图片都包含到一张大图中去,然后利用CSS的 background-image,background-repeat,background-position属性的组合进行背景定位。

    1K40编辑于 2022-08-03
领券