华为机试题库及答案java_第1页
华为机试题库及答案java_第2页
华为机试题库及答案java_第3页
华为机试题库及答案java_第4页
华为机试题库及答案java_第5页
已阅读5页,还剩3页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华为机试题库及答案java姓名:____________________

一、选择题(每题[5]分,共[20]分)

1.下列哪个不是Java的基本数据类型?

A.int

B.float

C.String

D.boolean

2.在Java中,下列哪个关键字用于声明一个抽象类?

A.abstract

B.interface

C.final

D.native

3.以下哪个方法用于获取当前时间?

A.System.currentTimeMillis()

B.Date.now()

C.Calendar.getInstance().getTime()

D.newDate()

4.下列哪个不是Java中的集合框架接口?

A.List

B.Map

C.Set

D.Array

5.在Java中,如何定义一个无参构造函数?

A.publicMyClass(){}

B.publicMyClass()=newMyClass();

C.publicMyClass();

D.publicMyClass(newMyClass());

二、填空题(每题[5]分,共[20]分)

1.Java中,使用________关键字声明一个常量。

2.在Java中,使用________关键字定义一个接口。

3.在Java中,使用________关键字声明一个抽象方法。

4.Java中,String类是不可变的,如果要修改字符串,可以使用________类。

5.在Java中,使用________关键字实现方法重载。

三、简答题(每题[10]分,共[30]分)

1.简述Java中的继承机制。

2.简述Java中的多态。

3.简述Java中的异常处理。

四、编程题(每题[20]分,共[40]分)

1.编写一个Java程序,实现一个简单的计算器,能够执行加、减、乘、除四种基本运算。程序应该包含一个主类和一个计算器类。主类中包含一个main方法,用于接收用户输入的两个数字和一个运算符,然后调用计算器类的方法进行计算并输出结果。

```java

//计算器类

classCalculator{

publicdoubleadd(doublea,doubleb){

returna+b;

}

publicdoublesubtract(doublea,doubleb){

returna-b;

}

publicdoublemultiply(doublea,doubleb){

returna*b;

}

publicdoubledivide(doublea,doubleb){

if(b==0){

thrownewIllegalArgumentException("Divisionbyzeroisnotallowed.");

}

returna/b;

}

}

//主类

publicclassMain{

publicstaticvoidmain(String[]args){

//实例化计算器对象

Calculatorcalculator=newCalculator();

//假设用户输入

doublenum1=10;

doublenum2=5;

Stringoperator="+";

//根据运算符调用相应的方法

switch(operator){

case"+":

System.out.println("Result:"+calculator.add(num1,num2));

break;

case"-":

System.out.println("Result:"+calculator.subtract(num1,num2));

break;

case"*":

System.out.println("Result:"+calculator.multiply(num1,num2));

break;

case"/":

System.out.println("Result:"+calculator.divide(num1,num2));

break;

default:

System.out.println("Invalidoperator.");

break;

}

}

}

```

2.编写一个Java程序,实现一个简单的银行账户管理系统。该系统应该包含以下功能:

-存款(deposit)

-取款(withdraw)

-查询余额(checkBalance)

```java

//银行账户类

classBankAccount{

privatedoublebalance;

publicBankAccount(doubleinitialBalance){

this.balance=initialBalance;

}

publicvoiddeposit(doubleamount){

balance+=amount;

}

publicvoidwithdraw(doubleamount){

if(amount>balance){

System.out.println("Insufficientfunds.");

}else{

balance-=amount;

}

}

publicdoublecheckBalance(){

returnbalance;

}

}

//主类

publicclassMain{

publicstaticvoidmain(String[]args){

//实例化银行账户对象

BankAccountaccount=newBankAccount(1000);

//存款

account.deposit(500);

System.out.println("Balanceafterdeposit:"+account.checkBalance());

//取款

account.withdraw(200);

System.out.println("Balanceafterwithdrawal:"+account.checkBalance());

//查询余额

System.out.println("Currentbalance:"+account.checkBalance());

}

}

```

五、综合题(每题[30]分,共[60]分)

1.设计一个Java类,用于表示一个学生。该类应包含以下属性:姓名(Stringname)、年龄(intage)、成绩(intscore)。同时,提供以下方法:

-构造函数,用于初始化学生的姓名、年龄和成绩。

-getName():返回学生的姓名。

-getAge():返回学生的年龄。

-getScore():返回学生的成绩。

-setName(Stringname):设置学生的姓名。

-setAge(intage):设置学生的年龄。

-setScore(intscore):设置学生的成绩。

-toString():返回学生的详细信息。

```java

//学生类

classStudent{

privateStringname;

privateintage;

privateintscore;

publicStudent(Stringname,intage,intscore){

=name;

this.age=age;

this.score=score;

}

publicStringgetName(){

returnname;

}

publicintgetAge(){

returnage;

}

publicintgetScore(){

returnscore;

}

publicvoidsetName(Stringname){

=name;

}

publicvoidsetAge(intage){

this.age=age;

}

publicvoidsetScore(intscore){

this.score=score;

}

@Override

publicStringtoString(){

return"Student{"+

"name='"+name+'\''+

",age="+age+

",score="+score+

'}';

}

}

//主类

publicclassMain{

publicstaticvoidmain(String[]args){

//实例化学生对象

Studentstudent=newStudent("JohnDoe",20,85);

//输出学生信息

System.out.println(student);

}

}

```

2.编写一个Java程序,实现一个简单的图书管理系统。该系统应包含以下功能:

-添加图书(addBook)

-删除图书(deleteBook)

-查找图书(findBook)

-显示所有图书(listBooks)

```java

//图书类

classBook{

privateStringtitle;

privateStringauthor;

publicBook(Stringtitle,Stringauthor){

this.title=title;

this.author=author;

}

publicStringgetTitle(){

returntitle;

}

publicStringgetAuthor(){

returnauthor;

}

@Override

publicStringtoString(){

return"Book{"+

"title='"+title+'\''+

",author='"+author+'\''+

'}';

}

}

//图书管理系统类

classLibrary{

privateList<Book>books;

publicLibrary(){

books=newArrayList<>();

}

publicvoidaddBook(Bookbook){

books.add(book);

}

publicvoiddeleteBook(Stringtitle){

books.removeIf(book->book.getTitle().equals(title));

}

publicBookfindBook(Stringtitle){

for(Bookbook:books){

if(book.getTitle().equals(title)){

returnbook;

}

}

returnnull;

}

publicvoidlistBooks(){

for(Bookbook:books){

System.out.println(book);

}

}

}

//主类

publicclassMain{

publicstaticvoidmain(String[]args){

//实例化图书管理系统对象

Librarylibrary=newLibrary();

//添加图书

library.addBook(newBook("JavaProgramming","JohnDoe"));

library.addBook(newBook("PythonProgramming","JaneSmith"));

//显示所有图书

library.listBooks();

//查找图书

BookfoundBook=library.findBook("JavaProgramming");

if(foundBook!=null){

System.out.println("FoundBook:"+foundBook);

}else{

System.out.println("Booknotfound.");

}

//删除图书

library.deleteBook("JavaProgramming");

//再次显示所有图书

library.listBooks();

}

}

```

试卷答案如下:

一、选择题答案及解析:

1.答案:C

解析:Java的基本数据类型包括byte、short、int、long、float、double、char和boolean,String是Java中的类,不属于基本数据类型。

2.答案:A

解析:Java中使用abstract关键字声明一个抽象类,抽象类不能被实例化,只能被继承。

3.答案:A

解析:System.currentTimeMillis()返回当前时间的时间戳,即从1970年1月1日00:00:00UTC到当前时间的毫秒数。

4.答案:D

解析:Java中的集合框架接口包括List、Set、Map、Queue等,Array是Java中的数组类,不属于集合框架接口。

5.答案:A

解析:在Java中,使用public关键字声明一个无参构造函数。

二、填空题答案及解析:

1.答案:final

解析:在Java中,使用final关键字声明一个常量,常量的值在初始化后不能被修改。

2.答案:interface

解析:在Java中,使用interface关键字定义一个接口,接口可以包含抽象方法和常量。

3.答案:abstract

解析:在Java中,使用abstract关键字声明一个抽象方法,抽象方法没有方法体,只能存在于抽象类或接口中。

4.答案:String

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论