[java知识点笔记合集]牛客网错题集

1.Java和C++的区别:

1. Java是解释型语言,所谓的解释型语言,就是源码会先经过一次编译,成为中间码,中间码再被解释器解释成机器码。对于Java而言,中间码就是字节码(.class),而解释器在JVM中内置了。

2. C++是编译型语言,所谓编译型语言,就是源码一次编译,直接在编译的过程中链接了,形成了机器码。

3. C++比Java执行速度快,但是Java可以利用JVM跨平台。

4. Java是纯面向对象的语言,所有代码(包括函数、变量)都必须在类中定义。而C++中还有面向过程的东西,比如是全局变量和全局函数。

5. C++中有指针,Java中没有,但是有引用。

6. C++支持多继承,Java中类都是单继承的。但是继承都有传递性,同时Java中的接口是多继承,类对接口的实现也是多实现。

7. C++中,开发需要自己去管理内存,但是Java中JVM有自己的GC机制,虽然有自己的GC机制,但是也会出现OOM和内存泄漏的问题。C++中有析构函数,Java中Object的finalize方法

8. C++运算符可以重载,但是Java中不可以。同时C++中支持强制自动转型,Java中不行,会出现ClassCastException(类型不匹配)。

2.下面的类哪些可以处理Unicode字符?

InputStreamReader
BufferedReader
Writer
PipedInputStream

简单地说,字符流是字节流根据字节流所要求的编码集解析获得的

可以理解为字符流=字节流+编码集

所以本题中和字符流有关的类都拥有操作编码集(unicode)的能力。

字符流=字节流+编码集

字节流继承于InputStream OutputStream,字符流继承于InputStreamReader OutputStreamWriter

3.链接:https://www.nowcoder.com/questionTerminal/779a8f85397b46dcb98e3ccf299f331f
来源:牛客网
 

下列说法正确的有( )

  •  

这道题考察的是字符流跟字节流的类吧。

后缀是Stream的都是字节流,其他的都是字符流。

[不定项选择题]

下列说法正确的有( )

  • 环境变量可在编译source code时指定
  • 在编译程序时,所能指定的环境变量不包括class path
  • javac一次可同时编译数个Java源文件
  • javac.exe能指定编译结果要置于哪个目录(directory)
  • 编译 多个。java 文件

 

链接:https://www.nowcoder.com/questionTerminal/779a8f85397b46dcb98e3ccf299f331f
来源:牛客网
 

在Java中,环境变量可在编译source code时指定

在编译程序时,所能指定的环境变量包括class path

javac一次可同时编译数个Java源文件

javac.exe能指定编译结果要置于哪个目录(directory)

猜你喜欢

转载自blog.csdn.net/oDianZi1234567/article/details/86214682