本文主要是介绍【java】牛客网刷题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、
给出以下代码
public class TestObj{public static void main(String[] args){Object o=new Object(){public boolean equals(Object obj){return true;}};System.out.println(o.equals(“Fred”));}}
答案:
true
总结:
知识点:
(1)本题构造了匿名内部类、并赋值给了对象o,同时相当于一个上转型对象。
(2)重写了equals方法。
疑问:
(1)一开始向为什么重写时参数是一个object的对象,使用时却输入一个字符串,后来明白了,String是Object的一个子类。
2、
以下代码将打印出
public static void main(String args[]) {List Listlist1 = new ArrayList();Listlist1.add(0);List Listlist2 = Listlist1;System.out.println(Listlist1.get(0) instanceof Integer);System.out.println(Listlist2.get(0) instanceof Integer);
}
答案:
true true
知识点;
(1)拆箱装箱:需要它是Integer它就是Integer,需要它是int它就是int。
(2)将list1的值赋值给list2那么两者指向同一个堆内存空间
3、一个 .java文件中可以有多个类,唯一的限制就是文件中只能有一个public类,并且此public类必须与文件名相同。
4、接口中只能由默认静态变量(public final static)
5、java的关键字一律是小写,所以null是关键字NULL不是
6、其他类直接调用equals方法就相当于直接使用==,只有String重写了equals方法,只要内容一样就行。
7、在接口中使用 public static final 数据类型 常量名 来定义常量,也可以直接省去 public static final
8、
(1)abstract 和 final不能来同时修饰一个类
(2)abstract 和 private 不能同时修饰一个方法或变量
因为private作用范围是本类
(3)abstract 和 static 不能同时修饰一个方法
因为static修饰的方法可以用类名直接调用,而abstract方法没有方法体,不能调用
9、除了String和基本数据类型是值传递,其他都是引用传递。
这篇关于【java】牛客网刷题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!