首页 > 编程语言 >每天5道Java面试题(第二天)

每天5道Java面试题(第二天)

时间:2023-11-04 21:33:54浏览次数:52  
标签:面试题 Java 相同 子类 equals 第二天 返回值 方法

1. JDK 和 JRE 有什么区别?

JDK:Java Development Kit 的简称,Java 开发工具包,提供了 Java 的开发环境和运行环境。

JRE:Java Runtime Environment 的简称,Java 运行环境,为 Java 的运行提供了所需环境。

具体来说JDK 其实包含了 JRE,同时还包含了编译 Java 源码的编译器Javac,还包含了很多 Java 程序调试和分析的工具。简单来说:如果你需要运行 Java 程序,只需安装 JRE 就可以了,如果你需要编写 Java 程序,需要安装 JDK。

2. 为什么java中没有全局变量?

java中是没有真正的全局变量的,因为一个java程序其实就是由多个类方法堆积起来的,而每个类、方法中的变量实际上都是属于它 自己的“全局变量”,相对于其他类、方法来说这些变量就成了局部变量。

3. == 和 equals 的区别是什么?

== 对于基本类型来说是值比较,对于引用类型来说是比较的是引用地址;

equals 默认情况下是引用地址比较,只是很多类重写了 equals 方法,比如 String、Integer 等把它变成了值比较。

4. 重写(overwrite) 和 重载(overload)的区别?

重载:

发生在同一个类中

相同的方法名

参数列表不同

不看返回值,如果出现了只有返回值不同的“重载”,是错的。


重写:

发生在子类与父类中

相同的方法名

相同的参数列表

返回值相同 或者 子类方法的返回值是父类方法返回值类型的子类

访问修饰符相同 或者 子类方法的修饰符范围 大于 父类

抛出的异常相同 或者 子类方法抛出的异常 小于父类


5. 两个对象的hashCode() 相同,则equals()也一定为true,对吗?

不对,两个对象的hashCode()相同,equals()不一定 true。

String“通话”和“重地”的 hashCode() 相同,然而 equals() 则为 false,因为在散列表中,hashCode() 相等即两个键值对的哈希值相等,然而哈希值相等,并不一定能得出键值对相等。

标签:面试题,Java,相同,子类,equals,第二天,返回值,方法
From: https://blog.51cto.com/kongxiaolong/8185249

相关文章

  • Java学习—对象和类
    对象&类对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类:类是一个模板,它描述一类对象的行为和状态。java命名约定的优点通过使用标准的Java命名约定,您可以使自己和其他程序员更容易阅读代码。Jav......
  • java基础学习:注解注释
     编译之后的注释是没有的,.class文件里没有注释的  ......
  • JavaScript复习——03 函数
    函数在JS中也是一个对象,它具有其它对象的所有功能,函数中可以存储代码,且可以在需要的时候调用这些代码函数的操作函数的定义函数声明function函数名([参数列表]){ //函数体 return返回值;}函数表达式const函数名=function([参数列表]){ return返回值;}......
  • Java 基础篇day06
    String字符串,可以用来创建对象封装字符串数据,并对其进行处理创建字符串的方式点击查看代码//String创建对象封装字符串数据的方式Java程序中的所有字符串文字都为此类的对象1.简单的方案Stringname="xiaohei";2.方式二:调用String类提供的构造器初始化字符串对象,封装......
  • Java拾贝第十六天——其他集合类Properties
    PropertiesProperties是Map的子实现类,其定义如下publicclassPropertiesextendsHashtable<Object,Object>Hashtable是Map接口的一个子类,与Vector一样都是旧的操作类,与HashMap没什么区别。Properties是操作属性文件的一个属性操作类。属性文件中属性都是以字符串表示的键......
  • Java JDBC
    JDBC基本用法常用接口和类简介DriverManager类用于管理JDBC驱动的服务类。程序中使用该类的主要功能是获取Connection对象publicstaticsynchronizedConnectiongetConnection(Stringurl,Stringuser,Stringpass)throwsSQLException获取url对应的数据库连接C......
  • java 异常捕获
    HTTP响应主体的方式不同: a.@RestController:   1.返回的对象数据作为JSON/XML直接写入HTTP响应.   2.是@Controller+@ResponseBody组合注解.获取请求参数方式:在方法写形参获取=>适合少量的定义一个对象存储提交的字段=>适合量多的3.在方法写形参:3.1Ge......
  • JavaSE(09) - 面向对象进阶
    JavaSE(09)-面向对象进阶p121static关键字static表示静态,是java中的一个修饰符,可以修饰成员方法,成员变量.一,被static修饰的成员变量,叫做静态变量.特点:被改类所有对象共享不属于对象属于类随着类的加载而加载,优先于对象存在调用方式:类名调用(推荐)对......
  • JavaSE(10) - 面向对象进阶
    JavaSE(10)-面向对象进阶P129认识多态(polymorphism)多态就是对象的多种形态多态的前提是:1,有继承/实现关系2,有父类引用指向子类对象3,有方法重写多态的好处:使用父类型作为参数,可以接收所有子类对象,体现多态的扩展性与便利P130多态调用成员的特点调用......
  • 学JAVA用PYTHON重写day02.5
    packageday02;publicclassDemo05{/*三个数字排序*/publicstaticvoidmain(String[]args){System.out.println("三个数字排序,从大到小:");inta=2;intb=5;intc=1;intt;if(a<b){......