天天看点

java 考试易考识记题目(一)

笔者擅长 C# 语言,4月份要考试,学习 JAVA 是为了考试罢了。

如何在最短时间内学习 JAVA 基础语法和通过考试考核呢~

学习 JAVA ,要为了应付考试,判断、循环这部分,C、C++、C#、JAVA 都是一样的,不需要重复学习。

基础语法上,C++ 跟 C# 接近,例如命名空间(namespace)、继承(????。

高级语法 JAVA 跟 C# 接近,很多 API 甚至名字都一样。

笔者在学习和完成试卷练习时,将具有代表性的 JAVA 题目抽取出来,集中复习和了解习题的套类,这样最短时间能够通过考试,并且拿到高分。

啦啦啦啦啦~

注:以下题目内容从往年试题或者互联网中获取而来,侵删!

1,java语言最初的应用对象是 消费级电子产品

最初设计时,是为了应用到电子游戏机、电视机机顶盒等电子产品。

2,Java SDK 的核心中,解释器所对应的可执行文件是 java.exe

javac.exe 用于编译 <code>.java</code> 源文件,java.exe 用于解释执行编译后的程序。

3, 联编 是将发送给对象的消息与执行该消息方法的对象连接起来。

联编分为静态联编和动态联编。静态联编在编译时处理(就是平时的代码);动态联编,事先不确定实例化的对象类型,在编译后才确定。

动态联编用于在运行时,才确定需要的实例。

父类A,子类B、子类C。

4,java Date 时间字符串的默认顺序为 星期,月,日,小时,分,秒,年

格式如 <code>Sat Mar 21 22:15:24 CST 2020</code>

5, ((k-1)^k)&amp;k 代表何种意义

答:取下非0整型变量k最右边为1的那一位。

6,super

java 中的 super 跟 c# 的 base一样。

java 称为 超类、子类;C# 称为 基类/父类、子类。

super 有多种作用:

指定调用超类的哪个构造函数;

访问被子类重写/覆盖的方法

访问被子类隐藏的方法

7,&amp;&amp; 考核

阅读以下程序代码,写出程序的输出结果

答案是 <code>2,1,1,false</code>

这题目有 <code>误导</code> 成分,咋一看,有 <code>++i</code>、<code>i++</code> 这样的运行,实践上只需要运算 <code>a++&gt;1</code>。原因在于 <code>&amp;&amp;</code> 运算是从左到右,当左侧条件为 <code>false</code> 时,程序不会执行右侧的表达式了。

8,字符串等值

查看以下程序代码的输出

结果是

java 中,String 类型的 == 运算符,比较的是对象的引用。

不同的 new String() 对象,即使是相同的值,也不是同一个对象。

C# 中,string 类型 的 == 运算符经过了重写,比较的是字符串的值;

而 <code>String aa = "1";</code> 、<code>String bb = "1";</code> 都是常量 <code>1</code> ,没有 new,所以 == 的结果相同。

9,程序设计题

使用循环把26个大写英文字母按字典顺序存入一维数组,然后再使其逆序存放(不得使用另外的数组),最后再根据处理后的字符数组创建一个字符串,输出此字符串。编程完成以上要求。

解析:基础排序算法之一。刚开始时我想用冒泡算法解决。但是看到答案时,答案使用的是倒转的方法,过程更加简单。

原因在于 26 个字母已经是按顺序排序(乱序则使用冒泡算法),直接反转就行。

题目要求

循环存入26个字母(大写)的数组;

逆放(反转);

输出字符串;

第一步代码如下

第二步如下

最后一步使用 String 的构造函数就行

10,程序设计题

编写用数组实现不超过200位的大整数的类 BigInteger,要求提供大整数的加运算。

解析:java 中,有 BigInteger 这个类,内部是对 int[] 的封装,可以表示任意长度的整数。

题目要求我们实现一个类似 BigInteger 的类。然后要实现 10 进制的 加法运算。

方法很多,而且不限定怎么写,能计算就行。

可以参考

https://wenku.baidu.com/view/6b050b976aec0975f46527d3240c844769eaa01b.html