Java面试总结汇总,整理了包括Java基础知识,集合容器,并发编程,JVM,常用开源框架Spring,MyBatis,数据库,中间件等,包含了作为一个Java工程师在面试中需要用到或者可能用到的绝大部分知识.欢迎大家阅读,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽.文章持续更新中… Java概述 何为编程 编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程. 为了使计算机能够理解人的意图,人类就必须要将需解决的问题的思…
刚刚经历过秋招,看了大量的面经,顺便将常见的Java常考知识点总结了一下,并根据被问到的频率大致做了一个标注.一颗星表示知识点需要了解,被问到的频率不高,面试时起码能说个差不多.两颗星表示被问到的频率较高或对理解Java有着重要的作用,建议熟练掌握.三颗星表示被问到的频率非常高,建议深入理解并熟练掌握其相关知识,方便面试时拓展(方便装逼),给面试官留下个好印象. 目录 JVM.JRE及JDK的关系 ** JAVA语言特点 ** JAVA和C++的区别 ** Java的基本数据类型 ** 隐式(自…
41.日期和时间:- 如何取得年月日.小时分钟秒?- 如何取得从1970年1月1日0时0分0秒到现在的毫秒数?- 如何取得某月的最后一天?- 如何格式化日期?答:问题1:创建java.util.Calendar 实例,调用其get()方法传入不同的参数即可获得参数所对应的值.Java 8中可以使用java.time.LocalDateTimel来获取,代码如下所示. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 public class D…
1.面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:- 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么.- 继承:继承是从已有类得到继承信息创建新类的过程.提供继承信息的类被称为父类(超类.基类):得到继承信息的类被称为子类(派生类).继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段(如果不能理解请阅读阎宏博士的<Java与模式>或<设计模式精…
1.String类可以被继承吗?  不能.String类在声明中使用final关键字修饰符.使用final关键字修饰的类无法被继承. Java语言的开发者为什么要将String类定义为final类呢? •因为当字符串是不可变的,字符串池才有可能实现.字符串池的实现可以在运行时节约很多的堆空间,因为不懂的字符串变量都指向池中的同一个字符串.如果字符串是可变的,那么字符串的驻留将不可能实现,因为这样的话, 如果变量改变了它的值,那么其他指向这个值的变量也会一起改变.如果字符串是可变的那边会引起很严重…
文章目录 1. 面向对象和面向过程的区别 2. Java 语言有哪些特点? 3. 关于 JVM JDK 和 JRE 最详细通俗的解答 JVM JDK 和 JRE 4. Oracle JDK 和 OpenJDK 的对比 5. Java和C++的区别? 6. 什么是 Java 程序的主类 应用程序和小程序的主类有何不同? 7. Java 应用程序与小程序之间有那些差别? 8. 字符型常量和字符串常量的区别? 9. 构造器 Constructor 是否可被 override? 10. 重载和重写的区别…
一个JAVA文件可以定义多个类,但是只能有一个是public(也可以没有public类),并且该public的类的名称和JAVA文件名称相同.同时一个java文件可以有多个main方法,只有和java文件名相同的那个类的main方法才是程序的入口.在编译的时候,多个类会被分别编译成不同的.class文件. 在JAVA语言中,静态代码块会在类的加载过程中被调用,因此静态代码块可以在main()方法之前执行. 静态代码块是在类加载时自动执行的,非静态代码块在创建对象自动执行的代码,不创建对象不执行该…
equals与==有什么区别? (1)==是判断两个变量或实例是不是指向同一个内存空间 (2)equals是判断两个变量或实例所指向的内存空间的值是不是相同 Object有哪些公用方法? (1)equals测试两个对象是否相等 (2)方法clone进行对象拷贝 (3)方法class返回和当前对象相关的Class对象 (4)方法notify,notifyall,wait都是用来对给定对象进行线程同步的 Override和Overload的含义去区别 Java中的方法重载(Overloading)发…
经典的Java基础面试题集锦,欢迎收藏和分享. 问题:如果main方法被声明为private会怎样? 答案:能正常编译,但运行的时候会提示”main方法不是public的”. 问题:Java里的传引用和传值的区别是什么? 答案:传引用是指传递的是地址而不是值本身,传值则是传递值的一份拷贝. 问题:如果要重写一个对象的equals方法,还要考虑什么? 答案:hashCode. 问题:Java的”一次编写,处处运行”是如何实现的? 答案:Java程序会被编译成字节码组成的class文件,这些字节码可…
下面是java基础笔试题,当时我去笔试,做了1个小时(80道选择题,后面的简答题就没时间做了),结果很吓人,太挫了,最后被面试官忽悠去培训去了,呵呵.我偷偷把面试题弄了下来,用来学习吧,也希望能对你们有所帮助. 1.下列说法正确的是() (程序结构) A java程序的main方法必须写在类甩面 B java程序中可以有多个main方法 C.java程序中类名必须与文件名一样 D.JAVA程序的main方法中如果只有一条语句,可以不用{}括起来 2.java中,在如卜所示的Test类中,共有()…