笔试题

发布时间 2023-03-27 20:27:40作者: 惊鸿宴远赴人间

1.用一个生活案例,描述面向对象这个概念

你跟她说“去倒茶”,她就会把茶到好;你说“老婆.衣服.颜色=红”,她就自己去把红色衣服换上。当你老婆做饭时,她会产生一个“帮忙”事件,当然,你可以选择处理或者不处理这个事件:p。你可以让老婆生Baby,这就是继承;老婆不会告诉你她有多少钱,这就是封装;老婆高兴了一个样,不高兴一个样,这就是“多态”……

 

2.native,volatile关键字的作用

native:修饰java方法

volatile:1、Java提供了volatile关键字来保证可见性;2、保证有序性,代码为【context = loadContext();inited = true;】;3、提供double check

 

3,分析代码,写出结果,分析原因

package edu.wtbu;

public class Demo01 {
public static void main(String[] args) {
String param=null;
switch (param){
case "null":
System.out.println("null");
break;
default:
System.out.println("default");
}
}
}

结果:Cannot invoke "String.hashCode()" because "<local2>" is null
原因:里面有hashCode字样,显然,原因是需要比较hashCode是否相等,而一方为null,null是无法获取其hashcode的,即空指针异常
改正:将 String param=null; 改为String param="null";

4.线程的五种状态,以及线程常用的方法