java考试题选择题

java考试题选择题,第1张

一、 选择题

3、设x=40 则y=(++x)+1和y=(x++)+1的结果,使y分别为( D )

A、42,42 B、41,41 C、41,42 D、42,41

4、设数组Array由以下语句定义

int Array=new int[10], 则数组最后一个元素的正确引用方法为( B )

A、Array[10] B、Array[9] C、array[10] D、array[9]

6、用abstract定义的类( D )

A、可以被实例化 B、不能派生子类

C、不能被继承 D、只能被继承

7、设有对象x具有属性a则访问该属性的方法为( C )

A、ax B、ax() C、xa D、xa()

8、符合对象和类关系的是: ( D )

A、人和老虎 B、书和汽车

C、楼和土地 D、松树和植物

9、throws的作用: ( A )

A、表示方法可能会抛出例外 B、 表示后面是方法的输出量

C、方法的标志,每个方法都必须有 D、没有意义

10、关于继承的说法正确的是: ( B )

A、子类将继承父类所有的属性和方法。

B、子类将继承父类的非私有属性和方法。

C、子类只继承父类public方法和属性

D、子类只继承父类的方法,而不继承属性

二、判断题

( 对 )1、Java可以用来进行多媒体及网络编程。

( 错 )2、类的public类型的成员变量不可以被继承。

( 错 )3、Java源程序文件中是不区分字母的大小写的。

( 错 )4、子类可以继承父类所有的成员变量及成员函数。

( 错 )5、Java applet不能够存取客户机磁盘上的文件。

( 错 )6、Java类中不能存在同名的两个成员函数。

( 对 )7、可以用new来创建一个类的实例,即”对象”。

( 对 )8、Java是一种面向对象的程序设计语言。

( 对 )9、Java程序对计算机硬件平台的依赖性很低。

( 错 )10、Java中类的构造函数只能有一个。

二、 程序阅读,并填空

1 阅读程序给出结果

下列程序段用来计算Fibonacci序列的第0,1,2,…各项

public class Fibonacci {

public static void main(String args[]) {

Systemoutprintln("Fibonacci 第4项="+(1)fib(3) );

}

static int fib(int n) {

if (n==0||n==1) {

return n;

}

else {

int sum=fib(n-1)+fib(n-2);

return sum;

}

}

}

输出结果为:(2)Fibonacci 第4项=2

2 按注释提示完成文件复制的程序

//FileStream源代码如下:

import javaio;

class FileStream {

public static void main(String args[]) {

try{

File inFile=new File("file1txt"); //指定源文件

File outFile=new File("file2txt"); //指定目标文件

FileInputStream fis=(1)new FileInputStream(inFile) ;

FileOutputStream fos=new FileOutputStream(outFile);

int c;

//逐字节从源文件中输入,再输出到fos流

while((c=fisread())!=-1)

(2) foswrite(fis,0,c) ;

fisclose();

fosclose();

}

catch(Exception e) {

Systemoutprintln("FileStreamsTest: "+e);

}

}

}

3 阅读程序,给出结果

//Bjava源代码如下:

class A{

int x=100;

}

class B extends A{

int x=200;

void prt(){

Systemoutprintln("SubClass: "+x);

Systemoutprintln("SuperClass: "+superx);

}

public static void main(String args[]){

new B()prt();

}

}

输出结果是

(1) 200 (2) 100

4 阅读程序,给出结果

//Sumjava源代码如下:

public class Sum{

public static void main(String []args) {

1:ObjectInputStream ,ObjectOutputStream

2:try{}

3:10

4:多继承

5:new

6:int , char

7:KeyListener

8:Applet

以上答案尽请参考

1、package nettest;

public class TestArray

{

int a[]={12,34,5,7,9,10};

public int max()

{

int j = a[1];

for(int i :a)

{

if(i > j)

{

j = i ;

}

}

return j;

}

public long avrage()

{

long j = 0l;

for(int i :a)

{

j = j + i;

}

return j/alength;

}

}

2、package nettest;

public class Person

{

String name;

int age;

Person(String name,int age)

{

thisname = name;

thisage = age;

}

public void printInfo()

{

Systemoutprintln("name = "+thisname+" age = "+thisage);

}

}

package nettest;

public class Student extends Person

{

String studentId;

Student(String name, int age)

{

super(name, age);

}

Student(String name, int age,String studentId)

{

super(name, age);

thisstudentId = studentId;

}

public void printInfo()

{

Systemoutprintln("name = "+thisname+" age = "+thisage+" StudentId =" + thisstudentId);

}

}

3、package nettest;

public class TestPrint

{

public static void main(String[] args)

{

for (int i = 1; i<10;i++)

{

for(int j = 0; j<i;j++)

{

Systemoutprint("");

}

Systemoutprintln();

}

}

}

3, 文件名:Threejava

public class Three {

public static void main(String[] args) {

Student stu = new Student("Zhang San", true, (short)12);

Systemoutprintln("Student name: " + stuname);

Systemoutprintln("Student is a male: " + stusex);

Systemoutprintln("Student's age: " + stuage);

stuwork();

stustudy();

Teacher teacher = new Teacher();

teacherlearnMoney();

}

}

abstract class Person{//抽象类Person

protected String name;

protected boolean sex;

protected short age;

protected abstract void work(); //work抽象方法

}

interface Learnmoney{//Learnmoney接口

public void learnMoney();

}

interface Study{//Study接口

public void study();

}

class Student extends Person implements Study{//Student类

public void work() {

Systemoutprintln("学生的工作是努力学习");

}

public Student(String name, boolean sex, short age){

supername = name;

supersex = sex;

superage = age;

}

public void study() {

Systemoutprintln("学生正在学习");

}

}

class Teacher extends Person implements Learnmoney{

public void work() {

Systemoutprintln("教师的工作是教书育人");;

}

public void learnMoney() {

Systemoutprintln("教师正在赚钱");

}

}

class Docotor extends Person implements Learnmoney{

public void work() {

Systemoutprintln("医生的职责是救死扶伤");

}

public void learnMoney() {

Systemoutprintln("医生正在赚钱");

}

}

------------------------------------

4文件名:Fourjava

public class Four {

public static void main(String[] args) {

Rectangle r = new Rectangle(3, 4);

Systemoutprintln("Area is : " + rarea());

Systemoutprintln("Circle is: " + rcircle());

}

}

class Rectangle{

private double width;

private double height;

public Rectangle(double width, double height){

thiswidth = width;

thisheight = height;

}

public double circle(){//求周长

return (width + height) 2;

}

public double area(){//求面积

return width height;

}

}

--------------------

5Fivejava

public class Five {

public static void main(String[] args) {

AImpl a = new AImpl();

apaint();

}

}

interface A {

public int method1(int x);

public int method2(int x, int y);

}

class AImpl implements A{

public int method1(int x) {

return (int)Mathpow(x, 5);

}

public int method2(int x, int y) {

return x > y x: y;

}

public void paint(){

int result1 = method1(2);

int result2 = method2(2, 8);

Systemoutprintln("method1(2) = " + result1);

Systemoutprintln("method2(2, 8) = " + result2);

}

}

-----------------------------测试

method1(2) = 32

method2(2, 8) = 8

异常的抛出,就是将异常抛给异常处理器,暂时不去处理它。

摘要:《Java程序员面试指南》第7章异常处理及内存管理,本章讲述的是要想成功地成为一名合格的Java程序员,掌握好异常处理机制是编写大型程序必不可少的基本功。本节为大家介绍异常的处理方式之三:throw。

标签:throw Java 程序员 Java程序员面试指南

Oracle帮您准确洞察各个物流环节

74 异常的处理方式之三:throw(1)

异常的抛出,就是将异常抛给异常处理器,暂时不去处理它。本节主要讲解用throw抛出异常的方式,以及如何由try-catch来接收所抛出的异常。

当一个方法发生异常时可以通过throw关键字来抛出异常,把异常抛给它上一级的调用者,抛出的可以是异常引用,也可以是异常对象,它的语法格式如下:

throw 异常对象名; 或者

throw new 异常类名(); 一条throw语句一旦被执行,程序立即转入相应的异常处理程序段,它后面的语句就不再执行了(这一点类似于return语句),而且它所在的方法也不再返回有意义的值。在一个方法中,throw语句可以有多条,但每一次最多只能执行其中的一条。在一般情况下,throw语句都会写在判断语句块中,以避免每次都执行该语句。

代码剖析下面来看一个例子,也许从中你会明白点什么。具体代码如下:

public class catchThows { static int x; public static void main(String argv[]) { double a = Mathrandom() 10; if (x > 0) Systemoutprintln(a / x); else throw new Exception(); // 抛出异常 } public void setX(int x) { thisx = x; } } 运行结果如图71所示。

(大图)图71 运行结果

从上面的运行结果中可以看出,一个方法中如果使用throw来抛出异常,要么自己捕获它,要么声明抛出了一个异常。要声明抛出了异常,需要用throws关键字在方法的头部声明。如果我们将上面的代码修改成下面的代码,那么结果又会怎样呢?

public class catchThows_1 { static int x; public static void main(String argv[]) { new catchThows()setX(0); double a = Mathrandom() 10; if (x > 0) Systemoutprintln(a / x); else try { throw new Exception();// 抛出异常 } catch (Exception e) { Systemoutprintln("出现异常的原因是:"+egetMessage()); } } public void setX(int x) { thisx = x; } } 运行结果如下:

出现异常的原因是:null 还有一种抛出异常的方法是让被调用的方法表示它将不处理异常,该异常将被抛出到它的调用方法中。这点是和throws声明异常很相似的,但它们的位置是完全不同的。具体代码如下:

public class catchThows_2 { void findThows() { try { //抛出方法 throw new ArithmeticException(); } catch(ArithmeticException ae) { throw ae; } } public static void main(String args[]) { catchThows ct=new catchThows(); //对方法进行异常处理 try { ctfindThows(); } catch(ArithmeticException ae) { Systemoutprintln("出现异常的原因是:"+ae); } } } 运行结果如下:

出现异常的原因是:javalangArithmeticException

责任编辑:云霞 TEL:(010)68476606

回书目 上一节 下一节

上一篇: 73 异常的处理方式之二:throws(2) 下一篇: 74 异常的处理方式之三:throw(2)

相关文章

·75 内存的管理(2)

·74 异常的处理方式之三:throw(2)

·173 Java高级编程试题(1)

·171 Java基础编程试题(6)

·171 Java基础编程试题(5)

频道热门

·自己动手写搜索引擎

·112 编写代码(15分钟)

·111 准备工作环境(10分钟)

·软件调试的艺术

·WCF编程(第2版)

第一题看的脑壳疼,但是和第二题的意思差不多,我帮你做了第二题

public class List {

public static void main(String[] args) {

Employee e1 = new Employee("张强","2010/09/01",6890);

e1show("普通");

Systemoutprintln("年纳税:"+e1tax());

Manager m1 = new Manager("朱慧","2003/07/06",18530,38000);

m1show("管理");

Systemoutprintln("年纳税:"+m1tax());

}

}

//下面是补全的代码

class Employee{

String name,date;

double salary,bonus;

Employee(String name,String date,double salary){

thisname = name;

thisdate = date;

thissalary = salary;

}

public void show(String str){

Systemoutprintln("岗位:"+str);

Systemoutprintln("姓名:"+name+",入职时间:"+date+",月薪:"+salary);

}

public double tax(){

if(salary <= 0){

throw new RuntimeException("工资不允许小于等于0");

}

else if(salary>3000 && salary<=5000){

salary = salary00512; //纳税这里我也不知道他们具体是怎么个算法,反正意思差不多,套进去就行了

}

else if(salary>5000 && salary<=10000){

salary = salary0112;

}

else if(salary>10000 && salary<=15000){

salary = salary01512;

}

else if(salary>15000){

salary = salary0212;

}

return salary+(bonus02);

}

}

class Manager extends Employee{

Manager(String name,String date,double salary,double bonus){

super(name,date,salary);

superbonus = bonus;

}

public void show(String str){

Systemoutprintln("岗位:"+str);

Systemoutprintln("姓名:"+name+",入职时间:"+date+",月薪:"+salary+",奖金:"+bonus);

}

}

1-4:

has-a的关系、contains-a的关系、is-a的关系;

“班级”与“学生”是has-a的关系;

“学生”与“大学生”是is-a的关系。

1-5:

正确,把两个看做是类,“清华大学”包含了“大学”的全部成员,“大学”能接受的信息,“清华大学”一样能接受到。

1-6:

过程:面向对象的分析、面向对象的设计、面向对象的实现;

5个层次:对象-类层、静态属性层、服务层、结构层 、主题层;

引入了:界面管理、任务管理、数据管理。

PS:其实我也是JAVA新手,不知答得对不对,希望这些能对你有帮助,呵呵。。。。

程序写完了

/////////////////////////////////////////////////

public abstract class Person {

public String name;

public int age;

public String sex;

public Person(){

}

public abstract void eat();

/

@return Returns the age

/

public int getAge() {

return age;

}

/

@param age The age to set

/

public void setAge(int age) {

thisage = age;

}

/

@return Returns the name

/

public String getName() {

return name;

}

/

@param name The name to set

/

public void setName(String name) {

thisname = name;

}

/

@return Returns the sex

/

public String getSex() {

return sex;

}

/

@param sex The sex to set

/

public void setSex(String sex) {

thissex = sex;

}

}

/////////////////////////////////////////

/

因为学生也是人,所以要继承人的抽象类

/

public abstract class Student extends Person{

public abstract void study();

}

//////////////////////////////////////

public interface Graduate {

void graduateStudyMethod();

}

/////////////////////////////////////

public class Graduatestudent extends Student implements Graduate{

@Override

public void study() {

Systemoutprintln(getName()+"学生的学习方法");

}

@Override

public void eat() {

Systemoutprintln(getName()+"研究生需要吃饭");

}

public void graduateStudyMethod() {

Systemoutprintln(getName()+"研究生有学习的方法");

}

}

/////////////////////////////////////////

/

因为老师也是人,所以要继承人的抽象类

/

public abstract class Teacher extends Person{

public abstract void work();

}

//////////////////////////////////////////////

/

老师研究生

/

public class TeacherGraduate extends Teacher implements Graduate{

@Override

public void work() {

Systemoutprintln(getName()+"老师需要工作");

}

@Override

public void eat() {

Systemoutprintln(getName()+"老师需要吃饭");

}

public void graduateStudyMethod() {

Systemoutprintln(getName()+"老师研究生的学习方法");

}

}

/////////////////////////////////////

简单的测试类

public class Test {

public static void main(String[] args) {

Graduatestudent student = new Graduatestudent();

studentsetName("wangwenjun");

studentsetAge(24);

studentsetSex("男");

studenteat();

studentgraduateStudyMethod();

studentstudy();

TeacherGraduate teacherGraduate = new TeacherGraduate();

teacherGraduatesetName("liuna");

teacherGraduatesetAge(25);

teacherGraduatesetSex("女");

teacherGraduateeat();

teacherGraduategraduateStudyMethod();

teacherGraduatework();

}

}

/////////////////////////////

最终的输出结果

wangwenjun研究生需要吃饭

wangwenjun研究生有学习的方法

wangwenjun学生的学习方法

liuna老师需要吃饭

liuna老师研究生的学习方法

liuna老师需要工作

以上就是关于java考试题选择题全部的内容,包括:java考试题选择题、Java语言程序设计,填空题、JAVA程序设计题!请高手帮我解答!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9340152.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存