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

    Java高频面试题 -- 静态

    因此,静态变量的范围在Java类中是开放式的。 如果我们希望对范围进行更严格的控制,则变量应在对象创建级别创建。 同样,定义静态变量也不是一个好习惯,因为它们违反了面向对象编程的原理。 3. Java中静态方法的目的? 答:Java提供了静态方法的功能来在类级别创建行为。 静态方法是类的所有对象所共有的。 我们不需要创建类的任何对象来调用静态方法。 为什么在Java中将main方法标记为静态方法? 答:Java中的main方法被标记为静态,因此JVM可以调用它来启动程序。 如果main方法不是静态的,那么Java进程将调用哪个构造函数? 因此,在Java中将主要方法标记为静态是众所周知的约定。 但是,如果我们去除static,那将会有歧义。 Java进程可能不知道要调用哪个类的方法来启动程序。 答:不,从Java 7开始,您需要main()方法来执行程序。 在Java的早期版本中,有一种解决方法可用于使用静态块执行。 但是现在这个差距已经缩小。 7.

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

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

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

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

    Java高频面试题笔记

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

    43010发布于 2019-12-03
  • 来自专栏对线JAVA面试

    3道Redis高频面试题

    本文分享一下Redis几道常见的面试题: 缓存雪崩 1.1什么是缓存雪崩? 如果我们的缓存挂掉了,这意味着我们的全部请求都跑去数据库了。

    29310编辑于 2022-10-27
  • 来自专栏宇宙之_一粟

    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)。

    41131发布于 2020-10-26
  • 来自专栏前端开发面试手册

    前端高频vue面试题总结3

    哪些变化图片从上图中,我们可以概览Vue3的新特性,如下:速度更快体积减少更易维护更接近原生更易使用1.1 速度更快vue3相比vue2重写了虚拟Dom实现编译模板的优化更高效的组件初始化undate性能提高 Vue3新增特性Vue 3 中需要关注的一些新功能包括:framentsTeleportcomposition ApicreateRenderer2.1 framents在 Vue3.x 中,组件现在支持有多个根节点 VUE3.x 现在使用应用程序容器的 innerHTML。 Vue 3.x 现在使用应用容器的 innerHTML,这意味着容器本身不再被视为模板的一部分。 state) } else { // component or element ...}在进行if判断的时候,v-for是比v-if先进行判断最终结论:v-for优先级比v-if高参考 前端进阶面试题详细解答如果让你从零开始写一个

    1.6K40编辑于 2023-01-05
  • 来自专栏波波烤鸭

    Java面向对象高频面试题

      金三银四正是跳槽涨薪的好时节,波哥给大家整理了很多面试高频的问题,助力大家找到更好的工作哦,点点关注,感谢支持。 面向对象面试题 1.谈谈你对面向对象思想的理解? 谈谈你对面向对象的特征的理解 封装 ​ 即把对象的属性和方法包裹起来, 只能通过约定好的接口实现访问 ​ 封装是一种信息隐藏技术,在java中通过关键字private实现封装。 java中不支持多继承,一个类最多只能有一个父类。而在java中多继承是通过接口实现的。 (-IntegerCache.low)]; // 否则创建一个新的Integer对象 return new Integer(i); }   提醒:越是貌似简单的面试题 2 << 3(左移3位,相当于乘以2的3次方) 11. 构造器是否可以被重写?   构造器不能被继承,因此是不能被重写的,但是我们可以重载构造器 12. 是否可以继承String类?   

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

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

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

    54641发布于 2020-10-26
  • 来自专栏程序IT圈

    3道Redis高频面试题详细解析

    本文分享一下Redis几道常见的面试题: 缓存雪崩 1.1什么是缓存雪崩? 如果我们的缓存挂掉了,这意味着我们的全部请求都跑去数据库了。

    57520发布于 2021-01-19
  • 来自专栏从流域到海域

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

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

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

    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模型。

    60230发布于 2020-09-18
  • 来自专栏宇宙之_一粟

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

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

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

    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 应用程序。 此外,Java 还有引用数据类型,如数组、类、接口等。 3Java基础数据类型的转换⽅式 Java 中基本数据类型的转换分为自动类型转换和强制类型转换。

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

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

    3、可用作状态标志。 参考资料:  《Java编程思想》 ▲ 14 Java 线程和操作系统的线程是怎么对应的?Java线程是怎样进行调度的? 在java NIO编程中,我们需要理解以下3个对象Channel、Buffer和Selector。 Channel 首先说一下Channel,国内大多翻译成“通道”。 它是java中唯一不需要new 就可以产生对象的途径。以String s="abce";形式赋值在java中叫直接量,它是在常量池中而不是象new一样放在压缩堆中。 >我是MySingleton3的第一个子类MySingleton3Childa"; } } public class MySingleton3Childb extends MySingleton3 {

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

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

    由于它不是在Java中按对象定义的,因此可以节省内存。 2. 为什么在Java中创建静态变量不是一个好习惯? 答:静态变量是类的所有对象共有的。 如果创建了新对象,则无需测试静态变量的值。 因此,静态变量的范围在Java类中是开放式的。 如果我们希望对范围进行更严格的控制,则应在对象创建级别创建变量。 同样,定义静态变量也不是一个好习惯,因为它们违反了面向对象编程的原理。 3. 讲一下Java静态方法的作用? 答:Java提供了静态方法的功能,可以在类级别创建行为。 静态方法是类的所有对象所共有的。 我们不需要创建类的任何对象来调用静态方法。 为什么在Java中将main方法标记为静态方法? 答:Java中的main方法被标记为静态,因此JVM可以调用它来启动程序。 如果main方法不是静态的,那么Java进程将调用哪个构造函数? 因此,在Java中将主要方法标记为静态static是众所周知的约定。 但是,如果我们去除static,那将会有歧义。 Java进程可能不知道要调用哪个类的方法来启动程序。

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

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

    类型的对象,体现了多态 public static void makeAnimalSound(Animal animal) { animal.makeSound(); } } 3、 String s1 = "hello"; String s2 = "world"; // 字符串常量池中的内容 String s3 = intern()方法添加到字符串常量池,也引用了常量池中的"hello" System.out.println(s1 == s3); // 输出: true } } 12、介绍一下 s1 = "hello"; String s2 = "hello"; String s3 = new String("hello"); // 使用== ,因为s1和s3的内容相同 } } 14、hashCode()和equals()的关系 在Java中,hashCode()方法和equals()方法之间有着紧密的关系,它们共同用于正确处理对象的相等性和哈希表的性能

    68020编辑于 2024-11-26
  • 来自专栏Java经验之谈

    Java高频面试题- 每日三连问?【Day3】 — 集合容器篇

    Vector:   是 Java 早期提供的线程安全的动态数组,如果不需要线程安全,并不建议选择,毕竟同步是有额外开销的。   Vector 内部是使用对象数组来保存数据,可以根据需要自动的增加容量。 LinkedList(擅长 "插入" 和 "删除" 场景):   顾名思义是 Java 提供的双向链表,所以它不需要像上面两种那样调整容量,它也不是线程安全的。

    84320发布于 2021-08-16
  • 来自专栏MySQL入坑记

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

      写在前面,这篇内容是从一位江湖高手那里得来的,可以说是我看到过的最全的一篇JAVA语言面试题+答案了!!哈哥花了一通宵整理了出来,包括每题的答案和有深度的扩展文章推荐。 3. 两个对象的 hashCode() 相同,则 equals() 也一定为 true,对吗? 4. final 在 Java 中有什么作用? 5. 原因有三个:第一,我想为每一个为梦想时刻准备着的“有心人”,尽一份自己的力量,提供一份高度精华的 Java 面试清单;第二,目前市面上的面试题不是答案不准确就是内容覆盖面太窄,所以提供一份经典而又准确的面试题是非常有必要的 或许这份面试题还不足以囊括所有 Java 问题,但有了它,我相信你一定不会“败”的很惨,因为有了它,足以应对目前市面上绝大部分的 Java 面试了,因为这篇文章不论是从深度还是广度上来讲,都已经囊括了非常多的知识点了 ---- 哈哥推荐:需要深入研究该知识点的同学,可以访问下面这篇博客 《趣学JAVA:如何比较 Java 的字符串?》作者:沉默王二 ---- 3.

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

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

    Java高频面试题 1. JDK和JRE有什么区别? JDK:Java Development Kit的简称,Java开发工具包,它提供了Java程序的开发环境和运行环境,同时包括编译Java程序的编译器和调试器。 3. JVM分配哪些不同类型的内存区域? 在Java中,JVM将内存分配给不同的进程,方法和对象。 Java平台与其他平台有何不同? Java是与平台无关的语言。 Java编译器将Java代码转换为可由JVM解释的字节代码。 JVM为世界上几乎所有流行的平台编写。 Java编译器javac编译Java代码,而JVM java运行该代码。 javac HelloWorld.java java HelloWorld 7. Java中的类加载器是怎么工作的?

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

    Mysql高频面试题

    满足第三范式(3NF)必须先满足第二范式(2NF)。简而言之,第三范式(3NF)要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。>所以第三范式具有如下特征: >>1. 每一行都能区分 >>3. 每一个表都不包含其他表已经包含的非主关键字信息 7、mysql 的复制原理以及流程? 答:Mysql 内建的复制功能是构建大型,高性能应用程序的基础。 3. 从服务器重做中继日志中的时间, 把更新应用到自己的数据库上。 8、mysql 中 myISAM与 innodb 的区别? 1. 3. Repeatable Read(可重读) >> 这是 MySQL 的默认事务隔离级别,它确保同一事务的多个实例在并发读取数据时,会看到同样的数据行。 3、如果以上两种都不能操作,非要链表查询,那么考虑对相对应的查询条件做索引。加快查询速度。 4、针对数量大的表进行历史表分离(如交易流水表)。

    1.2K10发布于 2020-02-19
领券