Java基础学习总结(74)——Java常见笔试题及答案汇总
1. 下面哪些是合法的标识符?(ABE )--标识符
A. $persons B. TwoUsers C. *point D. this E. _endline
2. 下面程序运行的结果是( D )--运算符
class Example{
public static void main(String[] args){
int i = 45678;
int j = ~i;
System.out.println(j);
}
}
A.编译错误 B.输出45677 C.输出-45677 D.输出 -45679
3.下面程序运行的结果是( C )--循环控制语句
public class Example{
public static void main(String[] args){
int i = 100;
switch(i){
case 100:
System.out.print(i);
case 200:
System.out.print(i);
case 300:
System.out.print(i);
}
}
}
A.无任何输出 B.编译错误 C.输出100100100 D.输出100
4. 哪些不是Java关键字? ( AB )—关键字
A. TRUE B. sizeof C. const D. super E. void
5. 下面程序运行的结果是( B )--类型转换
public class Example {
public static void main(String[] args){
System.out.print(“” + 2 + 3);
System.out.print(2 + 3);
System.out.print(2 + 3 +“”);
System.out.print(2 +“”+ 3);
}
}
A.编译错误 B.235523 C.55523 D.2352323
6.下面程序运行的结果是( C )--类型转换
class Example{
public static void main(String[] args){
int x;
double y = -10.9;
x=(int)y;
System.out.print(x + “”);
y = 10.9;
x = (int)y;
System.out.println(x);
}
}
A.-11 10 B.-11 11 C.-10 10 D.-10 11
7.下面程序运行的结果是( C )--数组初始化
public class Example{
static int arr[] = new int[10];
public static void main(String a[]){
System.out.println(arr[1]);
}
}
A.编译错误 B.运行错误 C.输出0 D.输出null
8.下面哪个方法可以通知Java虚拟机调用垃圾回收器来回收已废弃对象? ( A )
A.System.gc() B.Runtime.gc() C.System.freeMemory
D.Runtime.getRuntime().growHeap()
9. 下面程序运行的结果是( B )--方法参数传递
Public class Example{
int x = 12;
public void method(int x){
x += x;
System.out.println(x);
}
public static void mian(String[] args){
Example t = new Example();
t.method(5);
}
}
A.5 B.10 C.12 D.17 E.24
10. 下面程序运行的结果是( D )--方法重写
class Base{
private void amethod(int iBase){
System.out.println(“Base.amethod”);
}
}
class Example extends Base{
public static void main(String[] args){
Exmple o = new Example();
int iBase = 0;
o.amethod(iBase);
}
public void amethod(int iover){
System.out.println(“Example.amethod”);
}
}
A.编译错误 B.运行错误 C.输出Base.amethod D.输出Example.amethod
11. 下面程序运行的结果是( C )--构造器调用
Class Example1{
public Example1(){
System.out.print(1);
}
}
class Example2 extends Example1{
public Example2(){
System.out.print(2);
}
}
class Example3 extends Example2{
public Example3(){
System.out.print(3);
}
}
public class Example{
public static void main(String[] args){
new Example3();
}
}
A.1 B.3 C.123 D.321
12. 下面程序运行的结果是( A )--内部类
public class Example{
class Inner{
void test(){
sample();
}
}
private Boolean flag = false;
public void sample(){
System.out.println(“Sample”);
}
public Example() {
(new Inner()).test();
}
public static void main(String[] args){
new Example();
}
}
A.输出Sample B.输出null C.编译错误 D.运行错误
13.下面哪一个方法是属于Math类的?( B )--常用基础包
A.absolute() B.log() C.cosine() D.sine()
14. 下面的哪些程序片断可能导致错误? ( BD )—常用基础包
A. String s = "Gone with the wind";
String t = " good ";
String k = s + t;
B. String s = "Gone with the wind";
String t;
t = s[3] + "one";
C. String s = "Gone with the wind";
String standard = s.toUpperCase();
D. String s = "home directory";
String t = s - "directory";
15. 下面程序运行的结果是( B )--自动装箱和拆箱
Public class Example{
public static void main(String[] args) {
Integer ten = new Integer(10);
Long nine = new Long(9);
System.out.println(ten + nine);
int i =1;
System.out.println(I + ten);
}
}
A.19 20 B.19 11 C.运行错误 D.11 1
16.面向对象的特征有哪些方面?并简述每一个特征。
1.抽象:
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2.继承:
继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。
3.封装:
封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
4. 多态性:
多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
17.Java的基本数据类型有哪些?并写出他们的取值范围。
boolean
char
byte
short
int
long
float
double
18.举例简述方法重写和方法覆盖。
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。
例子略
19.什么是GC?为什么要有GC?Java是如何实现GC的?
GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。
Java基础学习总结(74)——Java常见笔试题及答案汇总的更多相关文章
- java基础学习03(java基础程序设计)
java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和con ...
- java基础学习总结一(java语言发展历史、jdk的下载安装以及配置环境变量)
最近一段时间计划复习一下java基础知识,使用的视频课程是尚学堂高淇老师的,上课过程中的心得体会直接总结一下,方便以后复习. 一:计算机语言的发展 1:机器语言,最原始的语言,主要有“01”构成,最早 ...
- Java基础学习笔记一 Java介绍
java语言概述 Java是sun公司开发的一门编程语言,目前被Oracle公司收购,编程语言就是用来编写软件的. Java的应用 开发QQ.迅雷程序(桌面应用软件) 淘宝.京东(互联网应用软件) 安 ...
- JAVA基础学习——1.0 Java概述
Java语言 SUN公司 1995年推出的高级编程语言 ■ 主要应用方向 Web开发和Android开发 ■ 主要特点 平台无关性:能运行于不同的平台上 安全性:去掉了指针操作,内存由操作 ...
- Java基础学习笔记十 Java基础语法之final、static、匿名对象、内部类
final关键字 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后,就可以对 ...
- Java基础学习总结(50)——Java事务处理总结
一.什么是Java事务 通常的观念认为,事务仅与数据库相关. 事务必须服从ISO/IEC所制定的ACID原则.ACID是原子性(atomicity).一致性(consistency).隔离性(isol ...
- Java基础学习笔记二 Java基础语法
注释 注释用来解释和说明程序的文字,注释是不会被执行的. 单行注释 //这是一条单行注释 public int i; 多行注释 /* 这是 * 一段注释, * 它跨越了多个行 */ public vo ...
- Java基础学习笔记三 Java基础语法
Scanner类 Scanner类属于引用数据类型,先了解下引用数据类型. 引用数据类型的使用 与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式. 数据类型 变量名 ...
- Java基础学习笔记四 Java基础语法
数组 数组的需求 现在需要统计某公司员工的工资情况,例如计算平均工资.最高工资等.假设该公司有50名员工,用前面所学的知识完成,那么程序首先需要声明50个变量来分别记住每位员工的工资,这样做会显得很麻 ...
随机推荐
- AD、DNS、DHCP、IIS、WINS的形象定义及关系
AD-实际是就是一个包括所有信息的数据库,和现实生活中就将其比作派出所,所有的信息都要进入他那的数据库当中(包括人员姓名(计算机名.账号.密码等) DNS就是建立起关联起好记忆的名称,比如你家的位置用 ...
- webrtc学习资源
http://www.imaotao.cn/project/webrtc-201604
- bzoj1433[ZJOI2009]假期的宿舍(匈牙利)
1433: [ZJOI2009]假期的宿舍 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 2544 Solved: 1074 [Submit][St ...
- [Swift通天遁地]八、媒体与动画-(12)CoreText框架中的字体的FontMetrics布局信息
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- JS属性defer
其实就是简单的利用defer属性,让浏览器读JS脚本的时候完全不等脚本开始读就开始读下面的图片啊,html代码了.然后让js脚本自己在那里慢慢读取完以后再执行. 给外链的js脚本添加defer=& ...
- 使用Visual Studio Code + Node.js搭建TypeScript开发环境
Visual Studio Code搭建Typescript开发环境 —— 相关文章: http://www.cnblogs.com/sunjie9606/p/5945540.html [注意:这里仅 ...
- reactnative(2) - Navigator 使用案例
'use strict'; import React, { Component } from 'react'; import { AppRegistry, ScrollView, StyleSheet ...
- bindColumn、bindParam与bindValue的区别
bindColumn:绑定一列到一个 PHP 变量(类似于list()函数为变量赋值) <?php //连接数据库函数 functionconnect() { try { $dbh = new ...
- [转帖]c++ 面试整理
1. 继承方式 public 父类的访问级别不变 protected 父类的public成员在派生类编程protected,其余的不变 private 父类的所有成员变成pr ...
- React Native组件间通信
React Native组件间通信 React Native组件的关系有:父子关系.无直接关系.组件间通信主要针对这两类来讨论. 一.父组件和子组件之间通信 父组件向子组件传递消息.数据通过对子组件的 ...