每日一测~

1、Java跨平台运行的原理?

1、.java 源文件要先编译成与操作系统无关的 .class 字节码文件,然后字节码文件再通过 Java 虚拟机解释成机器码运行。
2、.class 字节码文件面向虚拟机,不面向任何具体操作系统。
3、不同平台的虚拟机是不同的,但它们给 JDK 提供了相同的接口。
4、Java 的跨平台依赖于不同系统的 Java 虚拟机。

2、==equals 的区别?

== :对于基本数据类型和引用数据类型的作用效果是不同的,如下所示:
基本类型:比较值是否相等。
引用类型:比较引用是否相同。
特殊:对于String类型的变量,如果是字符串常量则比较值是否相等,其它情况比较引用是否相同。
equals():它的作用也是判断两个对象是否相等。但它一般有两种使用情况:
情况1:类没有重写 equals() 方法。则通过 equals() 比较该类的两个对象时,等价于通过“==”比较这两个对象。
情况2:类重写了 equals() 方法,则按照重写的比较方式,一般我们都重写 equals() 方法来比较两个对象的内容是否相等。

3、是否能自己写个类,叫做 java.lang.String?

可以,但在应用的时候,需要用自己的类加载器去加载,否则,系统的类加载器永远只是去加载JDK中的那个 java.lang.String。在 Tomcat 的 Web 应用程序中,都是由 webapp自己的类加载器先自己加载 WEB-INF/classes目录中的类,然后才委托上级的类加载器加载,如果我们在 Tomcat的 Web应用程序中写一个 java.lang.String,这时候 Servlet 程序加载的就是我们自己写的 java.lang.String,但是这么做就会出很多潜在的问题,原来所有用了 java.lang.String 类的都将出现问题。

4、作用域public、private、protected、package-private以及不写时的区别?

public: 公共的具有最大的访问权限,被public 修饰的类,属性和方法不仅可以在类的内部访问也可以在类的外部访问。
protected: 受保护的,被protected修饰的类,属性和方法可以在本类中或者在其子类中被访问,即使子类和它不在同一个包。
package-private: 只允许在同一个包中进行访问。
private: 只能在本类中被访问。
不写的时候默认为 package-private。

作用域当前类同一包子孙类其他包
public
protected×
package-private××
private×××

5、final与static的区别?

都可以修饰类、方法、成员变量。
都不能用于修饰构造方法。
static 可以修饰类的代码块,final 不可以。
static 不可以修饰方法内的局部变量,final 可以。

6. List、Set、Map 之间的区别是什么?

List有序集合,元素可重复
Set不重复集合,LinkedHashSet按照插入排序,SortedSet可排序,HashSet无序
Map键值对集合,存储键、值和之间的映射,Key无序,唯一,value 不要求有序,允许重复
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值