叨叨两句
- 搞定
牛客网——java专项练习036
1
抽象类方法的访问权限默认都是public。( )
正确答案: B 你的答案: A (错误)
- 正确
- 错误
关于抽象类
JDK 1.8以前,抽象类的方法默认访问权限为protected
JDK 1.8时,抽象类的方法默认访问权限变为default
关于接口
JDK 1.8以前,接口中的方法必须是public的
JDK 1.8时,接口中的方法可以是public的,也可以是default的
JDK 1.9时,接口中的方法可以是private的
2
正确答案: C
- 010 2123012 3434
- 01201 340124 2334
- 0012314 01223344
- 12345 12345 12345
每个线程输出0,1,2,3,4,’空格, 输出空格前必有线程输出了0-4,所以选C
3
下面哪段程序能够正确的实现了GBK编码字节流到UTF-8编码字节流的转换:
byte[] src,dst;
正确答案: B
- dst=String.frombytes(src,”GBK”).getbytes(“UTF-8”)
- dst=new String (src,”GBK”).getbytes(“UTF-8”)
- dst=new String (”GBK”, src,) getbytes()
- dst=String.encode(String.decode(src,”GBK”)), “UTF-8”)
String (byte[] bytes, String charsetName) 通过使用指定的 charset 解码指定的 byte 数组,构造一个新的
1
String.getBytes(Charset charset) 使用给定的 charset 将此 String 编码到 byte 序列,并将结果存储到新的 byte 数组。
4
有关下述Java代码描述正确的选项是____。
public class TestClass {
private static void testMethod(){
System.out.println("testMethod");
}
public static void main(String[] args) {
((TestClass)null).testMethod();
}
}
正确答案: F
- 编译不通过
- 编译通过,运行异常,报NullPointerException
- 编译通过,运行异常,报IllegalArgumentException
- 编译通过,运行异常,报NoSuchMethodException
- 编译通过,运行异常,报Exception
- 运行正常,输出testMethod
我来总结下大家的分析。
1)此处是类对方法的调用,不是对象对方法的调用。
2)方法是static静态方法,直接使用"类.方法"即可,因为静态方法使用不依赖对象是否被创建。
null可以被强制类型转换成任意类型(不是任意类型对象),于是可以通过它来执行静态方法。
3)非静态的方法用"对象.方法"的方式,必须依赖对象被创建后才能使用,若将testMethod()方法前的static去掉,则会报 空指针异常 。此处也验证了2)的观点
当然,不管是否静态方法,都是已经存在的,只是访问方式不同。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。