java创建学生对象有返回值,javaSE试题(二)

一、不定项选择题(共10小题,每题3分,共30分)

1、下面哪个不是java中的关键字?(  B   )

A.  public

B.  true

C.  main

D.  class

2、下面数组定义错误的是(  B D    )

A.  int [] arr ={23,45,65,78,89};

B.  int [] arr=new int[10] ;

C.  int [] arr=new int[4]{3,4,5,6};

D.  int [] arr={‘a’, 23 , 45 , 6};

3、下面关于方法描述正确的是(  A C )

A.  方法是对功能代码块的封装

B.  方法没有返回值的时候什么都不用写

C.  没有返回值的方法,不能有return 语句

D.  方法是可以没有形参的

4、Java中main()函数的返回值是什么 ( D)

A、String

B、int

C、char

D、void

5、在Java中,关于构造方法,下列说法错误的是(  B   )

A、 构造方法的名称必须与类名相同

B、 构造方法可以带参数

C、 构造方法不可以重载

D、 构造方法绝对不能有返回值

6、下面有关方法覆盖说法不正确的是:(  C D )

A. 方法覆盖要求覆盖和被覆盖的方法有相同的名字,参数列以及返回值

B. 方法覆盖要求覆盖和被覆盖的方法必须具有相同的访问权限;

C. 覆盖的方法不能比被覆盖的方法抛出更多的异常

D. 覆盖的方法一定不能是private的

7、关于被访问控制符protected修饰的成员变量,以下说法正确的是? (  BD  )

A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B. 可以被两种类访问和引用:该类本身、该类的所有子类

C. 只能被该类自身所访问和修改

D.只能被同一个包中的类访问

8、 下列有关继承的说法。正确的是:( A  C  )

A. 子类能继承父类的所有方法和属性;

B. 子类能继承父类的非私有方法和属性

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

D. 子类能继承父类的方法,而不是属性

9、以下关于JVM的叙述,正确的是?(  AC   )

A.JVM运行于操作系统之上,它依赖于操作系统

B.JVM运行于操作系统之上,它与操作系统无关

C.JVM支持Java程序运行,它能够直接运行Java字节码文件

D.JVM支持Java程序运行,它能够直接运行Java源代码文件

10、已知如下定义:String s = “story”; 下面哪个表达式是合法的(   BC   )

A、 s += “books”;

B、char c = s[1];

C、int len = s.length;

D、 String t = s.toLowerCase();

二、简答题(共10小题,每题5分,共50分)

1、Java中的基本类型有哪些?它们的字节数,bit数分别是多少?

答:byte(1字节,8位),shot(2字节,16位),char(2字节,16位),int(4字节,32位),boolean(4字节,32位),float(4字节,32位),long(8字节,64),double(8字节,64位)

2、简述为什么Java被称作是“平台无关的编程语言”?

答: java 主要的程序操作在后台,通过Java的虚拟机jvm来直接运行Java字节码文件,Java源码执行的只是一些表面上的程序代码;

3、overload和override的区别

答:overload重载,形参列表必须改变,override重写形参列表和参数必须不能改变,抛出的异常不能比被重写的方法的范围更加广

4、阐述final、finally的区别。

答:final所定义的类是不能被修改的,被修改会抛出异常,用final定义的变量也不能被修改,否则会重新定义一个新的变量;

Finally主要在try…catch 后运行,无论程序发生什么错误,finally模块都会执行,除非java虚拟机停止或关闭

5、String s = new String("xyz");创建了几个String 对象?二者分别是什么?

答:2个,分别是“s”和“xyz”

6、Error类和Exception类有什么区别?

答:Error则是指一般是指与jvm相关的问题

Exception是java异常机制

7、String类的equals()与“==”的区别

答:equals()是用来比较值

“==”比较变量

8、什么是装箱?什么是拆箱?什么是自动装箱和自动拆箱?

答:装箱是把基本数据类型转换成包装类;拆箱是把包装类转换成基本数据类型

自动的意思是通过jdk 1.5后应用程序编译把数据类型基本类型和包装型进行自动的转换,例如: Integer aa= 11 , int bb = aa

9、阐述静态变量和实例变量的区别?

答:静态变量是以static修饰符所修饰的变量,

实例变量不以static所修饰,该变量需要进行new实例化

10、Java的访问修饰符有哪些?它们作用范围是什么?

答:public,protected,private

Public公有的,对外开放的,同一个包都可调用

Private私有的,它的范围比public的范围小,

Protected是受内部所保护的,外部不可调用,只要是修饰方法和属性;

三、编程题(共1小题,每题20分,共20分)

注意:本大题需要把源码粘贴在对应题目下方,并且需要录制运行过程和运行结果视频。

1、假设1701班有40个学生,学号为170101~170140,全部参加语文、数学、英语三门考试,给出所有同学的各科成绩(成绩为整数、随机产生,范围为 [50,100]),并求出每位同学的总成绩。请编写程序将1701班各位同学的总成绩从高到低排序,并使用IO流的知识的把成绩写入到D:\StudentScore.txt文件中。

注:成绩相同时学号较小的先打印;要求:

打印的信息包含学号、姓名(姓名统一为“同学X”[X=01,02,03,...]和学号后两位一致)和成绩,具体格式参考下面截图。

遍历数组时使用迭代器

5a786fdbec27c64c4f50d4cba83aed69.png

答:

代码:

packagecom.TEST.demo;

importjava.io.FileOutputStream;

importjava.io.IOException;

importjava.io.OutputStream;

importjava.util.ArrayList;

importjava.util.Collections;

importjava.util.Iterator;

importjava.util.List;

importjava.util.Random;

public classTestzes {

private static finalOutputStreamFileOutputStream=null;

/**

*@paramargs

*@throwsIOException

*/

public static voidmain(String[] args)throwsIOException {

List listStu=newArrayList<>();

Random random=newRandom();

OutputStream out=newFileOutputStream("D:/StudentScore.txt");

for(inti = 0; i < 40; i++) {

Studentsote Studentzo=newStudentsote();

intid=(170101+i);

Studentzo.setId(id);

String name="";

if(i+1<10){

name="0"+i+1;

}else{

name=""+i+1;

}

Studentzo.setName(name);

intchara=random.nextInt(51)+50;

Studentzo.setLanguage(chara);

intshuxue=random.nextInt(51)+50;

Studentzo.setMath(shuxue);

intyingyu=random.nextInt(51)+50;

Studentzo.setEnglish(yingyu);

intZoSc=chara+shuxue+yingyu;

Studentzo.setZoscore(ZoSc);

listStu.add(Studentzo);

}

Collections.sort(listStu);

Iterator itera=listStu.iterator();

while(itera.hasNext()) {

Studentsote studentaa=itera.next();

String textjcac=("学号"+studentaa.getId()

+",姓名:同学:"+studentaa.getName()

+",语文:"+studentaa.getLanguage()

+",数学:"+studentaa.getMath()

+",英语:"+studentaa.getEnglish()

+",总成绩:"+studentaa.getZoscore());

out.write(textjcac.getBytes());

}

out.flush();

out.close();

}

private staticOutputStream File(String string) {

//TODOAuto-generated method stub

return null;

}

}

classStudentsoteimplementsComparable{

private int id;

privateStringname;

private int language;

private int math;

private int english;

private int zoscore;

@Override

public intcompareTo(Studentsote o) {

if(o.zoscore!=this.zoscore){

returno.zoscore-this.zoscore;

}else{

return this.id-o.id;

}

}

public intgetId() {

return id;

}

public voidsetId(intid) {

this.id= id;

}

publicString getName() {

return name;

}

public voidsetName(String name) {

this.name= name;

}

public intgetLanguage() {

return language;

}

public voidsetLanguage(intlanguage) {

this.language= language;

}

public intgetMath() {

return math;

}

public voidsetMath(intmath) {

this.math= math;

}

public intgetEnglish() {

return english;

}

public voidsetEnglish(intenglish) {

this.english= english;

}

public intgetZoscore() {

return zoscore;

}

public voidsetZoscore(intzoscore) {

this.zoscore= zoscore;

}

}

结果:

32618bb0fbdc8a0a8ca9918d893c1745.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值