1.在 Java 中类的定义在 Java 中,类是用于创建对象和定义数据类型的模板。 它充当面向 Java 语言的系统的构建块。
2.静态加载和动态加载有什么区别?静态类加载涉及使用新关键字来创建对象和实例,而动态加载是在编译时不知道类的名称的场景执行的。
3. 什么是多线程多线程是一种编程概念,用于在单个程序中以并发方式运行多个任务。
4. 何时以及是谁开发的 Java ?Java 由 James Gosling 于 1995 年在 Sun Microsystem 中开发。
5. JDK,JRE 和JVM 分别代表什么?

  • JVM 代表 Java 虚拟机
  • JRE 代表 Java Runtime Environment
  • JDK 代表 Java Development Kit

6. Java 中使用指针吗?不,Java不使用指针。 它具有严格的安全性。 而不是指针,Java中使用引用,因为与指针相比,它们更安全,更安全。
7.如何使用Java连接数据库?使用Java连接数据库的步骤如下:

  • 注册驱动程序类
  • 创建连接
  • 创建声明
  • 执行查询
  • 关闭连接

8. JVM和JRE的功能是什么?JVM 为要执行的 Java 字节代码提供运行时环境。 JRE 包括 JVM 在运行时期间所需的文件集。
9.重载和覆盖(重写)有什么区别?当有两个名称相同但属性不同的方法时,它会重载。 当有两个具有相同名称和属性的方法时,会发生覆盖,一个在子类中,另一个在父类中。 查看此帖子以获得更深入的分析。
10.哈希基于集合的负载因子的默认大小是多少?默认大小为0.75,默认容量计算如下: 初始容量*负载因子
11.什么是包?包是相关类和接口的集合。
12.所有异常类的基类是什么?Java.lang.Throwable 是所有异常类的超类,所有异常类都是从这个基类派生的。
13. equals()和= =之间有什么区别?equals()方法用于检查业务逻辑定义的两个对象的相等性。 == 或等于运算符用于比较基元和对象。
14.说两个内部类和子类之间的差异Inner类在同一个文件中,子类可以在另一个文件中。 考虑到这一点,虽然子类具有其父类的方法,但内部类获取他们想要的方法。
15.如何用Java定义析构函数?由于Java有自己的垃圾收集,因此不需要定义析构函数。 垃圾收集机制自动执行对象的回收。
16. JSON定义JSON是JavaScript Object Notation的首字母缩写。 它使用JavaScript语法,格式仅为文本。
17.列举Java最重要的特性Java是一种独立于平台的语言。
18.什么是匿名类?使用new关键字在单行代码中没有名称定义的类称为匿名类。
19.什么是JVM?JVM是Java虚拟机,它是已编译的Java类文件的运行时环境。
20.死去的线程可以重新开启吗?不,处于死状态的线程无法再次启动。
21. 数组是原始数据类型吗?不,在Java中,数组是对象。
22.什么是Java中的构造函数?在Java中,构造函数是用于初始化对象的代码块。
23.有哪些类型的构造器?有两种类型的构造函数: 1.默认构造函数: 没有参数的构造函数称为默认构造函数。 如果我们没有在类中定义构造函数,编译器会为该类创建一个默认构造函数(没有参数),如下所示:

 // no-argument constructor
importjava.io.*;
class Sprint{
  intnum;
  String name;
  // this would be invoked while object
  // of that class created.
  Sprint(){
9     System.out.println("Constructor called");
  }
}
class Z{
13   public static void main (String[] args){
    // this would invoke default constructor.
    Sprint zeal1 = new Sprint();
16     // Default constructor provides the default
17     // values to the object like 0, null
18     System.out.println(zeal1.name);
19     System.out.println(zeal1.num);
  }
}

参数化构造函数 参数化构造函数具有已知参数的构造函数是参数化构造函数。 如果我们想用自己的值初始化类的字段,那么使用*参数构造函数。

 // Java Program to illustrate calling of
// parameterized constructor.
import java.io.*;
4
class Sprint{
6
  // data members of the class.
  String name;
  int id;
  // contructor would initialized data members
  // with the values of passed arguments while
  // object of that class created.
  Sprint(String name, int id){
    this.name = name;
    this.id = id;
  }
}
class Z{
20
public static void main (String[] args){
  // this would invoke parameterized constructor.
  Sprint zeal1 = new Sprint("adam", 1);
  System.out.println("Sprint Name :"+ zeal1.name +" and Sprint Id :" + zeal1.id);
 }
}

24.解释Java中的垃圾收器。在Java中,当不再使用或引用对象时,将调用垃圾收集并自动销毁对象。
25.堆栈和队列之间有什么区别?堆栈和队列之间的区别在于堆栈基于后进先出(LIFO)原则,而队列基于FIFO(先进先出)原则。

Java经典面试题(一)的更多相关文章

  1. 2019年19道java经典面试题(附答案)

    1.不可变对象 指对象一旦被创建状态不能再改变.任何修改都会创建一个新的对象,如 String.Integer及其它包装类. 2.能否创建一个包含可变对象的不可变对象? 可以.不要共享可变对象的引用就 ...

  2. 115道Java经典面试题(面中率最高、最全)

    115道Java经典面试题(面中率最高.最全) Java是一个支持并发.基于类和面向对象的计算机编程语言.下面列出了面向对象软件开发的优点: 代码开发模块化,更易维护和修改. 代码复用. 增强代码的可 ...

  3. LeetCode随缘刷题之Java经典面试题将一个字符串数组进行分组输出,每组中的字符串都由相同的字符组成

    今天给大家分享一个Java经典的面试题,题目是这样的: 本题是LeetCode题库中的49题. 将一个字符串数组进行分组输出,每组中的字符串都由相同的字符组成 举个例子:输入["eat&qu ...

  4. Java经典面试题+答案(全)

    这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的朋友在笔试时更好地赢得笔试和面试. 1.一个".java"源文件中是否可以包括多 ...

  5. BATJ等公司必问的8道Java经典面试题,你都会了吗?

    1.谈谈你对 Java 平台的理解?“Java 是解释执行”,这句话正确吗? 考点分析: 对于这类笼统的问题,你需要尽量表现出自己的思维深入并系统化,Java 知识理解得也比较全面,一定要避免让面试官 ...

  6. BAT等公司必问的8道Java经典面试题,你都会了吗?

    工作多年以及在面试中,我经常能体会到,有些面试者确实是认真努力工作,但坦白说表现出的能力水平却不足以通过面试,通常是两方面原因: 1.“知其然不知其所以然”.做了多年技术,开发了很多业务应用,但似乎并 ...

  7. Java经典面试题-不古出品

    @ 目录 一.Java 基础 1.JDK 和 JRE 有什么区别? 2.== 和 equals 的区别是什么? 3.两个对象的 hashCode()相同,则 equals()也一定为 true,对吗? ...

  8. Java经典面试题

    1. Java中的异常处理机制的简单原理和应用. 当Java 程序违反了Java的语义规则时,Java虚拟机就会将发生的错误表示为一个异常.违反语义规则包括2种情况.一种是Java类库内置的语义检查. ...

  9. Java经典面试题及详解

    Java基础方面:   1.作用域public,private,protected,以及不写时的区别 答:区别如下:  作用域           当前类       同一package       ...

随机推荐

  1. poj2116 模拟题

    不知道错在哪里 /* 给定两个斐波那契表示数,要求用标准化表达方式表达 然后将这两个数加起来,和也用标准化方式表达 思路:显然要将这两个数先用十进制表示,和也用十进制表示 然后在转化成二进制即可 1 ...

  2. 使用git克隆项目、从dev分支上更新代码以及将代码提交到Coding(或GitHub)上面

    本教程的目的: 这是个crm项目中,有两个分支一个是master 和 dev ,master主分支,不允许提交代码,我要拉去dev分支上最新的代码,并将修改后的项目,在推送到dev分支上. 一. 1. ...

  3. stylus入门教程,在webstorm中配置stylus

    转载:https://www.cnblogs.com/wenqiangit/p/9717715.html#undefined   stylus特点 富于表现力.具有健壮性.功能丰富.动态编码 不需要写 ...

  4. Oracle下载 OPatch

    今天被朋友问及,如何下载OPatch ...我当时有些凌乱的.事后想想,人与人的思维是不同的,对待同一个问题,有人觉得很简单,有人觉得无从下手 . 乱不多说了.开始说明下吧. 1. 首先要有一个MOS ...

  5. less 写关键帧动画

    @keyframes 关键帧动画写在less里的时候,务必要写在所有的{}之外,不能被{}包裹 甚至务必写在代码的最后 不然报错 Compilation resulted in incorrect C ...

  6. 静态属性property

    静态属性property(是通过对象去使用) property是一种特殊的属性,访问它时会执行一段功能(函数)然后返回值 1 . 通过@property修饰过的函数属性,调用的时候无需在加() cla ...

  7. python练习册0006

    第 0006 题:你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文,请统计出你认为每篇日记最重要的词. import re import os def get_li ...

  8. Win10任务栏通知区域上已卸载程序无效图标选项如何清除?

    在Win10系统中,大部分用户都已经知道在“选择在任务栏上显示哪些图标”来让一些软年图标显示,一些隐藏,不过使用Win10系统久了之后发现,在设置通知区域图标中有很多已经卸载程序的无效选项!这让设置时 ...

  9. Go语言之函数签名

    使用type关键字进行, 函数类型变量也可以作为函数的参数或返回值. 我觉得属于高级技巧了,初学者可能需要很多代码实现的, 高级的就可以更通用的实现. package main import &quo ...

  10. 选择结构switch

    1.选择结构switch switch 条件语句也是一种很常用的选择语句,它和if条件语句不同,它只能针对某个表达式的值作出判断,从而决定程序执行哪一段代码.例如,在程序中使用数字1~7来表示星期一到 ...