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常见笔试题及答案汇总的更多相关文章

  1. java基础学习03(java基础程序设计)

    java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和con ...

  2. java基础学习总结一(java语言发展历史、jdk的下载安装以及配置环境变量)

    最近一段时间计划复习一下java基础知识,使用的视频课程是尚学堂高淇老师的,上课过程中的心得体会直接总结一下,方便以后复习. 一:计算机语言的发展 1:机器语言,最原始的语言,主要有“01”构成,最早 ...

  3. Java基础学习笔记一 Java介绍

    java语言概述 Java是sun公司开发的一门编程语言,目前被Oracle公司收购,编程语言就是用来编写软件的. Java的应用 开发QQ.迅雷程序(桌面应用软件) 淘宝.京东(互联网应用软件) 安 ...

  4. JAVA基础学习——1.0 Java概述

    Java语言 SUN公司  1995年推出的高级编程语言 ■  主要应用方向 Web开发和Android开发 ■  主要特点 平台无关性:能运行于不同的平台上    安全性:去掉了指针操作,内存由操作 ...

  5. Java基础学习笔记十 Java基础语法之final、static、匿名对象、内部类

    final关键字 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后,就可以对 ...

  6. Java基础学习总结(50)——Java事务处理总结

    一.什么是Java事务 通常的观念认为,事务仅与数据库相关. 事务必须服从ISO/IEC所制定的ACID原则.ACID是原子性(atomicity).一致性(consistency).隔离性(isol ...

  7. Java基础学习笔记二 Java基础语法

    注释 注释用来解释和说明程序的文字,注释是不会被执行的. 单行注释 //这是一条单行注释 public int i; 多行注释 /* 这是 * 一段注释, * 它跨越了多个行 */ public vo ...

  8. Java基础学习笔记三 Java基础语法

    Scanner类 Scanner类属于引用数据类型,先了解下引用数据类型. 引用数据类型的使用 与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式. 数据类型 变量名 ...

  9. Java基础学习笔记四 Java基础语法

    数组 数组的需求 现在需要统计某公司员工的工资情况,例如计算平均工资.最高工资等.假设该公司有50名员工,用前面所学的知识完成,那么程序首先需要声明50个变量来分别记住每位员工的工资,这样做会显得很麻 ...

随机推荐

  1. 神经网络的结构汇总——tflearn

    一些先进的网络结构: # https://github.com/tflearn/tflearn/blob/master/examples/images/highway_dnn.py # -*- cod ...

  2. anaconda安装python三方包,以tensorflow为例

    Anaconda概述 Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存.切 ...

  3. [luogu_U15118]萨塔尼亚的期末考试

    https://zybuluo.com/ysner/note/1239615 题面 \(T\)次询问,求出\[\sum_{i=1}^n\frac{i}{\frac{n(n+1)}{2}}fib_i\] ...

  4. Tyvj 1068 巧用扩展KMP

    Tyvj1068 给定两个长度为2*10^5的字符串为A和B 求B在A中匹配后,任意匹配长度的位置个数. KMP算法大家应该烂熟于心才好,这样碰到这样的题才能灵活运用.有时做题真的需要一点灵感.首先, ...

  5. 看看 SDWebImage内部基本实现过程

    一.实现流程 入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWebImageManager 根据 ...

  6. Java中static final 与 final 的区别(转载)

    转自:http://advance0683.iteye.com/blog/1107732 Java中static final 与 final 的区别: 例子: Java代码 import java.u ...

  7. Java经典算法之插入排序(Insert Sort)

    插入排序在局部有序的情况下比冒泡排序快一倍,比选择排序快一点. 那什么是插入排序,就是将局部有序的数据向右移动,将未排序的数据插到他的前面 下面我们来解析代码: 这里外层循环out变量从1开始向右移动 ...

  8. Linux 本命令 基本上用到的命令-自己留着用

    1:在某个目录下查找文件: find /data -name '*srm*' 2:监测文件流: tail –f  /data/log.xml 3:   删除文件: rm –f /data/log.xm ...

  9. NS2学习笔记(三)

    代理(Agents) 代理是网络层数据包产生和使用的端点,用于实现多层的协议.Agent类部分用OTcl实现,部分用C++实现.C++的代码在~ns/agent.cc和~ns/agent.h中,OTc ...

  10. Linux下查看CPU和内存(很详细)

    在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要.在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况.运行 top 命令后,CPU 使用状态会 ...