牛客Java基础题错题随手记(一)

java错题随手记(一)
这是牛客网上做的有关Java的题目,记录自己出错的地方,也希望对其他小伙伴们有点帮助。

1、下面哪些Java中的流对象是字节流? 
 正确答案: A B C D   
A、FileInputStream
B、BufferedInputStream
C、PushbackInputStream
D、ByteArrayInputStream

解析:只要是Stream结尾的都是字节流,以reader或writer结尾的都是字符流。


2、有关继承的问题,父类,子类:
在实例化子类对象的前提下,若子类重写了父类的方法,调用时会调用子类重写之后的方法。

3、在Java语言中,下列关于字符集编码(Character set encoding)和国际化(i18n)的问题,哪些是正确的?
正确答案: C D   
A、每个中文字符占用2个字节,每个英文字符占用1个字节
B、假设数据库中的字符是以GBK编码的,那么显示数据库数据的网页也必须是GBK编码的。
C、Java的char类型,通常以UTF-16 Big Endian的方式保存一个字符。
D、实现国际化应用常用的手段是利用ResourceBundle类。
解析:
A显然是错误的,Java一律采用Unicode编码方式,每个字符无论中文还是英文字符都占用2个字节。 
B 也是不正确的,不同的编码之间是可以转换的,通常流程如下: 
将字符串S以其自身编码方式分解为字节数组,再将字节数组以你想要输出的编码方式重新编码为字符串。 
例:String newUTF8Str = new String(oldGBKStr.getBytes("GBK"), "UTF8"); 
C 是正确的。Java虚拟机中通常使用UTF-16的方式保存一个字符 
D 也是正确的。ResourceBundle能够依据Local的不同,选择性的读取与Local对应后缀的properties文件,以达到国际化的目的。

4、下列方法中哪个是线程执行的方法? ()
正确答案: A   
A、run()
B、start()
C、sleep()
D、suspend()
解析:run线程执行的方法                
     start是启动线程对象,使之从新建状态转入就绪状态;
     sleep让线程睡眠一段时间,在此期间线程不消耗CPU资源;
     suspend使线程挂起,暂停执行, 如果想恢复线程,必须由其他线程调用 resume方法

5、下列哪些操作会使线程释放锁资源?
正确答案: B C   
A、sleep()
B、wait()
C、join()
D、yield()
解析:
1.sleep会使当前线程睡眠指定时间,不释放锁 
2.yield会使当前线程重回到可执行状态,等待cpu的调度,不释放锁 
3.wait会使当前线程回到线程池中等待,释放锁,当被其他线程使用notify,notifyAll唤醒时进入可执行状态 
4.当前线程调用 某线程.join()时会使当前线程等待某线程执行完毕再结束,底层调用了wait,释放锁 

6、以下哪种JAVA得变量声明方式可以避免程序在多线程竞争情况下读到不正确的值(  )
正确答案: A B    
volatile
static volatile
synchronized
static
解析:synchronized不是修饰变量的 它修饰方法或代码块或对象。

7、以下语句的执行结果是什么?
1+”10”+3+”2”
正确答案: A   
A、”11032”
B、“16”
C、16
D、“32101”
解析:在遇到string类型之前,int间使用“+”还是表示数值的相加,但是遇到第一个string后,后面就都是按string类型来了,变成字符串的拼接 。

8、public class Test { 
    public int aMethod(){
        static int i = 0;
        i++; 
        return i;
    } 
错误!解析:
静态变量只能在类主体中定义,不能在方法中定义。

9、java8中,忽略内部接口的情况,不能用来修饰interface里的方法的有( )
正确答案: A C    
A、private
B、public
C、protected
D、static
解析:Java8的接口方法可以有如下定义 
only public, abstract, default, static and strictfp are permitted。

10、继承中父类和子类各个部分的运行顺序:
父类的静态变量、父类的静态代码块、子类的静态变量、子类的静态代码块、
父类的非静态变量、父类的非静态代码块、父类的构造函数、
子类的非静态变量、子类的非静态代码块、子类的构造函数。

11、arraylist、string、array的长度函数
    Arraylist.size();
    String.length();
    array.length;

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值