当前位置: 首页 > news >正文

Java --- 期末复习卷

一、单选题

1.所有Java应用程序主类必须有一个名叫(    )的方法。[      ]

A.method      B.main()         C.java()         D.hello  

2.编写并保存了一个Java程序文件之后,(    )它。[      ]

A.解释后并编译                  B.解释后并执行

C.编译后并重新保存              D.编译后并解释   

3."++ "运算符的操作数个数是(    )。[       ]

A1         B2            C3           D4

4.保存包含java语言源代码的文本文件使用的扩展名是(    )。[      ]

   A..java           B..class           C..txt               D..src  

5.下列哪一个不是方法访问权限(    )。[      ]

A.general       B.private         C.friendly       D.protected

6.下列对声明为double aMethod(char code)的方法的调用哪一个是正确的?[      ]

A.double aMethod();               B.double aMethod('v'); 

C.double aMethod(int 'm');          D.double Amethod('u');

7.下列哪个选项是合法的标识符?[       ]

A123         B1first          Cclass            D_name

8.一个类的文件头必须包括(    )。[      ]

A.一个访问权限   B.关键字class   C.关键字static     D.关键字public

9.下面代码的输出结果是(    )。[      ]

b=1;

while(b<4)

{  system .out .println (b+" ");

b=b+1;

}

A.1                               B.1  2  3

C.1  2  3  4                      D.1  1  1  1  1

10.下面程序段的输出结果是(    )。[      ]

for(m=0;m<4;++m)

  for(n=0;n<2;++n);

         system.out.print(m +" "+n +" ");

A.0 0 0 1 1 0 1 1 2 0 2 1 3 0 3 1       B.0 1 0 2 1 1 1 2 2 1 2 2

C.4 2                            D.3 1

11.语句statement  int [ ] value=new int [ 34 ];为(    )个整数保留了存储空间。[      ]

A.0         B.33               C.34         D.35

12.(    )是类创建的实例。[      ]

A.成员      B.数据             C.其他类     D.对象

13.当编写一个Java Applet时,要以(    )为扩展名将其保存。[      ]

A..app     B..html            C..java      D..class

14.Java应用程序和Java Applet有相似之处是因为它们都(    )。[      ]

A.是用javac命令编译的         B.是用javac命令执行的 

C.是用html文档中执行的       D.都拥有一个main方法

15.在Java里,创建继承的关键字是(    )。[      ]

A.static       B.enlarge          C.extends       D.inherits

16.使用相同的方法名来表示不同的实现被称作(    )。[      ]

A.继承       B.多态性          C.不顺从        D.隐藏

17.Java语言的特点:(     )。[      ]

A.面向对象、支持网络和解释型     B.  健壮、安全、平台无关   

C.  多线程和动态                   D.  以上选项都是

18.Java语言使用的字符码集是(    )。[      ]

A. ASCII     B. BCD           C.DCB          D.Unicode  

19.对于一维数组a[10],下列对数组的引用正确的是(   )。[      ]

A.a[10]            B.  a[0]         C.  a[3/1.0]       D.  a[3.4]

20.在程序读入字符文件时,能够以该文件为直接参数的类是(    )。[      ]

A.FileReader            B.BufferedReader         

C.FileInputStream        D.ObjectInputStream

21.Java.io包的File类是(    )。[      ]

    A.字符流类     B.字节流类        C.对象流类       D.非流类

22.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变? [      ]

A.CardLayout   B.FlowLayout       C.BorderLayout   D.GridLayout

  

布局管理器描述适用场景
CardLayout允许在同一个容器中堆叠多个组件,每次只显示一个组件。需要在不同状态下切换视图的场景,如向导、选项卡等。
FlowLayout按照从左到右、从上到下的顺序依次排列组件。按照顺序排列组件的场景,如工具栏、标签列表等。
BorderLayout将容器划分为五个区域:北、南、东、西和中。中间区域占据剩余空间,其他区域大小可调整。需要将组件放置在不同方位的场景,如主界面的顶部、底部等。
GridLayout将容器划分为行和列的网格,每个网格单元可以放置一个组件。需要以网格状方式排列组件的场景,如表格、按钮阵列等。

23在Java中,实现用户界面功能的包是(    )。 [       ]

A.java.applet    B.java.transaction     C.java.util         D.java.awt

24.Java程序中所有类的直接或间接父类是:(      )。[      ]

    A.System类   B.  Object类   C.  Math类   D.  Thread类

25.标签和按钮都是(    )。[       ]

A. 组件       B. 容器            C. Applet         D. 成分

26.监听事件和处理事件(    )。 [       ]

A都由Listener完成           B都由相应事件Listener处登记过的构件完成

C由Listener和构件分别完成   D由Listener和窗口分别完成

27.下列Java常见事件类中哪个是鼠标事件类?  [       ]

A.InputEvent     B.KeyEvent       C.MouseEvent    D.WindowEvent

28.在Java语言中,不允许使用指针体现出的Java特性是(    )。[      ]

A.可移植       B.解释执行        C.健壮性        D.安全性

29.假设数组声明如下:int [ ] num=new int[ 4 ] ;下面的哪一条语句正确地把数组的四个元素都赋值为100? [      ]

A.for(x=0;x<3;++x)num[x]=100;       B.for(x=0;x<4;++x)num[x]=100;

C.for(x=1;x<4;++x)num[x]=100;       D.for(x=1;x<4;++x)num[x]=100;

30.下列代码段输出的结果是什么?[      ]

     s=20

     if(s>30)

        System.out.println("AAA");

     System.out.println("BBB");

A.AAA          B.BBB        C.AAA BBB        D.什么也不显示

1.下列哪个选项是合法的标识符?[       ]

A123         B_name       Cclass      D1first        

2.下列的哪个赋值语句是正确的?[       ]

Achar a=12;                  Bint a=12.0;

Cint a=12.0f;                  Dint a=int12.0;

,- char a=12。编译器显示正确,但char 类型只能存储一个字符或者一个Unicode码值,不能直接赋值为整数。

3."++ "运算符的操作数个数是(    )。[       ]

  A1         B2          C3           D4

4.一个对象的属性也被称为它的(    )。[       ]

A.状态        B.定位         C.方法          D.过程

5.接口的方法语法格式默认为以下哪种访问级(     )。[       ]

A.private     B.  package     C.  public          D.   protected

6.必须把Java语言编写的程序编译成(    )。[       ]

A.字节代码    B.源代码       C.Javadoc语句   D.对象代码

7.所有Java语言语句必须以(    )结尾。[       ]

A.句号        B.逗号         C.分号          D."} "

8.在Java平台的术语中,执行某个任务的一系列语句是(    )。[       ]

A.过程        B.方法        C.子过程         D.函数

9.一个静态公共方法名为sum()在类A中,从类B中调用该方法,应用语句(    )。[       ]

A.sum (B);         B.B (sum ());         C.A.sum ();        D.不能从B中调用sum();

10.如果方法接收一个整型参数,则下列哪个方法声明对名为displayFacts() 的方法是正确的? [       ]

A.public void int displayFact()      B.public void displayFacts (int)

C.public void displayFacts(int data)  D.public void displayFacte()

11.每个对象都是一个通用(    )的一个成员或实例。[       ]

A.类         B.程序          C.方法         D.过程

12.定义一个类可以使用下列哪种访问权限? [       ]

A.open       B.static          C.abstract       D.concrete

"static" 是用于定义静态成员的关键字,而不是用于定义类的访问权限。

13.假设变量q的值是3,下列那一个语句打印XXX?[       ]

A.if(q!=3) System.out.println("XXX");     B.if(q=3) System.out.println("XXX");

C.if(q==3) System.out.println("XXX"); D.都不打印XXX

B 选项按C语言来说是对的,ButJava中它是错的。 

14.在if语句中嵌入if语句时,例如if(a>b)if(c>d)x=0;那么(    )。[       ]

A.a>b和c>d都必须为true时,x的值才设为0

B.要么a>b要么c>d都必须为true,x的值才设为0

C.a>b和c>d都必须为false时,x的值才设为0

D.没有条件使x的值为0

15.下面程序段的输出结果是(    )。[       ]

for(f=0;f<3;++f)

 for(g=0;g<2;++g)

 System.out.print(f +" "+g +" ");

A.0 0 0 1 1 0 1 1 2 0 2 1           B.0 1 0 2 0 3 1 1 1 2 1 3

C.0 1 0 2 1 1 1 2                 D.0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 2

16.为一个数组分配存储空间是 (    )。[       ]

A.声明数组名字                 B.使用关键字new  

C. 使用关键字men              D.在数组元素里明确的存储值

17.假如char []responses={Y,y,N,n};,如果字符变量userentry的值在responses列表里,那么下面哪条语句测试userentry并设置布尔变量goodchoice为true?  [       ]

A.for(x=0;x<4;++x)

         if(userentry=responses)goodchoice= =true;

B.for(x=0;x<4;++x)

         if(userentry[x]=goodresponses)goodchoice=true

C.for(x=0;x<4;++x)

         if(userentry=goodresponses[x])goodchoice= =true;

D.for(x=0;x<4;++x)

if(userentry= =goodresponses[x])goodchoice=true;

18.标签和按钮都是(    )。[       ]

A. 组件         B. 容器        C. Applet        D. 成分

19.如果父类与子类有相同的方法名但有不同的参数列表时,可以(    )。[       ]

A.重载方法                      B.覆盖一个方法

C.创建一个错误提示信息          D.违反了面向对象程序设计的规则

20.关键字(    )总是指使用的类的父类。

    A. parent       B. base         C. super          D. superclass

21.当编写一个Java Applet时,要以(    )为扩展名将其保存。[      ]

A..app        B..html         C..java         D..class

22.(    )下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问? [       ]

Aprivate        B.无修饰符      Cpublic        Dprotected

在Java中,成员变量的访问权限可以通过访问修饰符来控制。以下是常见的访问修饰符:

public可以被任何类访问。
private只能被声明该成员的类访问。
protected只能被同一包中的类访问,或者被不同包中的子类访问。
默认(package-private)没有修饰符,只能被同一包中的类访问。

23.下列InputStream类中哪个方法可以用于关闭流?[       ]

Askip()      Bclose()      Cmark()     Dreset()

24.下面哪个String方法进行了两个String对象的比较,比较的时候区分大小写并且将其结果用布尔类型的真值或者假值表示出来(     ) [       ]

AcompareTo()                   B.equalsIgnoreCase()    

C.campareToIgnoreCase()         D.equals()

25.下列关于Frame类的说法不正确的是(    )。 [       ]

AFrameWindow类的直接子类  BFrame对象显示的效果是一个窗口 

CFrame被默认初始化为可见      DFrame的默认布局管理器为BorderLayout 

26Java中,实现用户界面功能的包是(    )。 [       ]

Ajava.applet      Bjava.transaction   C.java.util      Djava.awt

27.Java.io包的File类是(    )。 [       ]

A字符流类     B字节流类        C对象流类    D非流类       

28.Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点? [       ]

A安全性     B多线性        C跨平台      D可移植

29.如果希望所有的控件在界面上均匀排列,应使用下列那种布局管理器?[       ]

ABoxLayout          BGridLayout     CBorderLayout         DFlowLouLayout

30.下列关于变量的描述中,不正确的一项是(    ) [       ]

A实例变量的作用域是整个类      B.局部变量必须加初始化

C.类变量能在方法中声明          D.类变量的作用域是整个类

1.保存包含java语言源代码的文本文件使用的扩展名是(    )。[      ]

A..java       B..class         C..txt          D..src            

               

2.在Java语言中,不允许使用指针体现出的Java特性是(    )。[      ]

A.可移植     B.解释执行      C.健壮性       D.安全性

3.下列元素中哪一个不是在变量声明中所要求的? [      ]

A.类型     B.标识符        C.赋值        D.分号   

4.java程序语言中的赋值运算符是(    )。[      ]

A.=         B.==            C.:=           D.::

5.下列中哪一个不是java中的简单数据类型? [      ]

   A.布尔型    B.字节型         C.整型        D.扇区

6.方法的参数总是出现在(    )里。[      ]

A.括号      B.双引号         C.单引号      D.花括号

7.下列数据类型中哪一个存储值占用的存储空间最少? [      ]

A.短整型    B.长整型         C.整型        D.字节型

8.定义一个类可以使用下列哪种访问权限?[      ]

A.open      B.static           C.abstract      D.concrete

9.声明为public int aMethod(double d)的方法的类型为(    ) 。[      ]

A.整型      B.双精度         C.空          D.不能决定的类型

10.名叫max()需要的两个整型参数的方法应声明为(    )。[      ]

A.public void max()             B.public void max(int a,b)

C.public void max(int a,int b)      D.public void max(a,b)

11.允许只能通过类自己的方法改变类的私有数据的概念称为(    )。[      ]

A.结构化逻辑        B.面向对象             C.信息隐藏          D.数据掩饰

12.如果类名为student(),那么类的构造方法的名字是(    )。[      ]

A.任何合法的Java标识符       B.studentConstructor

    C.student                      D.用s开始的任何合法的Java标识符

13.假设变量r的值为8,下列哪一个打印ZZZ?[      ]

Aif(r>1)System.out.println("YYY")

   else System.out.println("ZZZ")

Bif(r<1)System.out.println("YYY")

   else System.out.println("ZZZ")

Cif(r!=1)System.out.println("YYY")

   else System.out.println("ZZZ")

D所有都打印ZZZ

14.假设变量k的初始值是12,下列哪个语句可以设置m为0?[      ]

A.if(k>3&&k>6)m=0            B.if(k<3&&k<20)m=0

C.if(k>3&&k<0)m=0            D.所有的语句都可以设置m为0

15.提示用户输入的值必须在1到4之间,正确 的if语句是(    )。[      ]

Aif(ans >='1'||ans<='4') System.out,println("goodresponse ");

Bif(ans>='1'&&ans<='4') System,out.println("good response");

C两个语句都正确

D两个语句都不正确

16.语句for (a=0; a<5; ++a) System.out.println (a+" ");打印的是(    )。[      ]

A.0  0  0  0  0               B.0  1  2  3  4

C.0  1  2  3  4  5            D.什么也没有

17.下列语句打印的是(    )。[      ]

for(f=1,g=4;f<g ;++f,--g)

System.out.print(f+" "+g +" ");

A.1 4 2 3 3 2                   B.1 4 2 3

C.1 4 2 5 3 6 ……              D.什么也没有

18.如果声明数组为int [ ]num=new int[6] ,则数组的最后一个元素是(    )。[      ]

A.num [ 5 ]     B.num [6 ]    C.num [ 7 ]       D.不存在

19.在HTML文档中调用使用CODE的任何Applet的名字要以(    )为扩展名。[      ]

A..exe         B..code       C..java          D..class

20.当用户(    )时,destroy( )方法被调用。[      ]

A.关闭浏览器或AppletViewer窗口        B.最小化AppletViewer窗口

C.离开页面                            D.退出计算机

21.下列Java常见事件类中哪个是鼠标事件类?  [       ]

AInputEvent     BKeyEvent       CWindowEvent    DMouseEvent

22.(    )下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问? [       ]

Aprivate        Bprotected       Cpublic          D.无修饰符

23.下列InputStream类中哪个方法可以用于关闭流?[       ]

Askip()      B.close()      Cmark()        Dreset()

24.(       )可作为所有窗体和对话框的顶层窗体使用。[       ]

A.  JPanel     B.  JFrame     C.  JComponent     D.  JMenuBar

25.下列关于Frame类的说法不正确的是(    )。 [       ]

AFrameWindow类的直接子类     BFrame被默认初始化为可见 

CFrame对象显示的效果是一个窗口 DFrame的默认布局管理器为BorderLayout 

26Java中,实现用户界面功能的包是(    )。 [       ]

Ajava.applet      Bjava.transaction   Cjava.util       Djava.awt

27.Java.io包的File类是(    )。 [       ]

A字符流类      B字节流类      C对象流类     D非流类        

28.Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点? [       ]

A安全性       B多线性      C跨平台      D可移植

29.如果希望所有的控件在界面上均匀排列,应使用下列那种布局管理器?[       ]

ABoxLayout     BFlowLouLayout  CBorderLayout   DGridLayout

30.假设定义:String s = "Example"; 请问如下代码哪一个是正确的:(    ) [       ]

As>=3 ;                     B.  s<=2 ;      

C.  int i=s.length ;          D.  String t = "For " + s ;


二、判断题

( ×   ) 1.default在switch选择结构中是必须的。( x  )break在switch选择结构中是必须的。

      在Java的switch选择结构中,break语句用于终止当前的case并跳出switch语句块。它可以防止代码继续执行其他case分支。但是,break语句并不是必须的,具体取决于需要实现的逻辑。default语句:switch语句首先会找满足条件的case值做为执行后面的程序入口,若所有的case都不满足,则找default入口,若未找到则退出整个语句;default只是一个备用入口,有没有都无所谓。如果在某个case分支中使用了break语句,则在执行完该case分支后会跳出switch语句块,不会继续执行其他case分支。这是最常见的用法,可以避免现"case穿透"现象。

     但有时候我们可能会有意让代码继续执行下一个case分支,这时就可以不使用break语句。这种情况下,程序会继续执行下一个case分支,直到遇到break语句或者switch语句块结束。

     break语句在switch选择结构中并不是必须的,取决于实际需要控制代码流程的逻辑。

(  ×  ) 2.下面的代码打印值1到10

n=1;

while(n<10)

System.out.println(n++);

( ×  )下面的代码打印值1到10

n=1;

while(n<10)

System.out.println(++n);

(  √ ) 3.在java的一个源程序文件中最多只允许有一个public类。

解释:

在Java中,每个源程序文件都可以包含多个类,但只能有一个类被声明为public。这个public类的类名必须与文件名相同,并且一个Java程序的入口点(例如,包含main方法的类)通常被声明为public类。

其他非public类可以在同一个源程序文件中存在,但它们的访问权限将受到限制,只能在同一个包中被访问。

这个规则的目的是为了保持Java程序的结构清晰和可维护性,每个源程序文件都有一个清晰的入口点,并且只有特定的类对外可见。

(   × ) 4.如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p;是正确的。

(  √ )4.如果p是父类Parent的对象,而c是子类Child的对象,则语句“p = c;”是正确的。

在Java中,父类的对象不能直接赋值给子类的对象。这是因为子类对象具有父类对象的所有特性和行为,但是父类对象不具备子类对象特有的属性和方法。

正确的赋值应该是将子类对象赋值给父类对象,即可以使用父类引用来引用子类对象,如 

p=c;

(  √  ) 5.一个类可以生成多个对象,并且这些对象必须具有相同的属性。

( √  ) 6.构造方法也可以重载。

( √   )7、String abc[ ];是合法的Java语句。

(  √ )8、在Java语言里,do-while语句是先执行循环体,然后再判断的循环条件。

(  √ )9、抽象类不能创建实例。                        

(   √)10、Java源程序在转换为机器语言执行过程中既有编译也有解释。

( √ )11.Java语言采用一个字节表示一个字符。

(  √ )12.String是永久类,一旦创建String类的对象,该对象是不可修改的。

       Java中,String类是不可变的(immutable)类,这意味着一旦创建了String对象,它的值就不能被修改。

      当你对String对象执行字符串操作(例如拼接、替换等),实际上是创建了一个新的String对象,而原始的String对象保持不变。这是因为String类内部使用了字符数组来存储字符串的值,并且该字符数组是被声明为final的,不可更改。

例如,对于以下代码片段
 String str = "Hello"; str = str + " World";

在执行 str = str + " World"; 这行代码时,实际上创建了一个新的String对象来保存 "Hello World" 的值,并将新的String对象赋给变量str。原始的 "Hello" 字符串对象仍然存在,但是没有被修改。这种不可变性使得String类在多线程环境下是线程安全的,也方便进行字符串的共享和缓存,同时提高了性能。

( ×  ) 13.java语言中不用区分字母的大写小写。

(  ×  )14.数组允许存放不同类型的定长元素。

( ×   ) 15.Java中的类的继承支持多继承的。( × ) 在Java里,允许多重继承。

Java不支持多继承,而是支持多重继承的一种形式。

多重继承是指一个类可以同时继承多个父类,即一个子类可以有多个直接父类。这在某些编程语言中是允许的,但在Java中是不被支持的。Java中的类只能继承一个直接父类,这是为了避免多继承可能引发的冲突和复杂性问题。

Java使用接口(interface)来实现类似于多继承的概念,即一个类可以实现多个接口。一个类可以实现多个接口,从而获得多个接口定义的方法。这种机制允许类在实现不同的接口时具备不同的行为和功能。

接口提供了一种灵活而安全的方式来实现多重继承的特性,通过接口的实现,类可以拥有多个不同的行为,同时避免了多继承可能带来的冲突和复杂性。

     Java中的区别是不支持多继承,但支持多重继承的一种形式,即通过实现多个接口来实现类似多继承的效果。

(  √  ) 16.while(1){}将出现编译错误。

 在java中不行,C语言中的1可以当做boolean类型,而java中的1只能是数值型;


三、简答题

46.怎样区分Java应用程序和小应用程序?

答:Java应用程序源文件经过编译生成字节码文件,然后直接在Java虚拟机中解释执行,必须包含一个main方法;Java小应用程序必须继承系统提供的Applet类,源文件经过编译生成字节码文件,再编写相应的html文件,在html文件嵌入字节码文件,由Web浏览器来解释执行。 可以用 main和extends来区分Java应用程序和小应用程序。

47.类变量与实例变量有何区别?

答:类变量是用关键字static修饰的变量,而实例变量不用关键字static修饰。程序定义的每个对象都有自己的实例变量,而类变量是类所有对象共享的成员变量。不同对象的实例变量将被分配不同的内存空间,改变类的某一个对象的实例变量值不会影响其他对象的实例变量。类变量的内存只有一处,让类的所有对象共享。从类的任一对象改变类变量,类的其他对象都能发现这个改变。

48.简述进程和线程的基本概念以及它们的区别。

答:方法重载是指在同一个类中,两个方法具有相同名称、不同的的参数,即或者是参数的个数不同,或者是参数的类型不同。方法覆盖是指在子类对父类中已定义方法的方法体重新加以实现。

49.Java有哪些基本的数据类型?

(1)整型:基本型int、字节型byte、短整型short和长整形long

(2)浮点型:单精度float和双精度double

(3)字符型char

(4)逻辑型boolean

50.类方法与实例方法有何区别?

类方法是用关键字static修饰的方法,而实例方法不用关键字static修饰。类中的实例方法可以互相调用,并可调用类方法。类方法也能互相调用,但不能直接调用实例方法。实例方法可以引用实例变量也可以引用类变量,类方法可以引用类变量,不能引用实例变量。实例方法只能通过对象名调用,类方法对象名和类名都可以调用。

51.awt和swing是什么关系?

它们都是提供构造图形界面元素的类。AWT 是抽象窗口组件工具包,是 java 最早的用于编写图形节目应用程序的开发包。 Swing 是为了解决 AWT 存在的问题而新开发的包,它以 AWT 为基础的,是AWT的改良版,不是代替AWT。AWT依赖于主平台绘制用户界面组件;而Swing有自己的机制,在主平台提供的窗口中绘制和管理界面组件。

52.简述开发与运行Java程序的主要步骤?

(1)编写源程序,并保存为扩展名为.java的文件。

(2)经过Java编译器把源代码编译为字节码文件,即扩展名为.class的文件。

(3)如果是应用程序,由Java解释器执行;如果是小程序,由Web浏览器来解释执行。

53.简述字节流与字符流的区别。

字节流用于读写二进制数据。字节流数据是8位的,由InputStream类和OutputStream类为字节流提供API和部分实现。字节流读和写操作由FileInputStream类和FileOutputStream类提供支持。它们分别是InputStream类和OutputStream类的子类。

字符流用于读写16位的Unicode字符,由Reader类和Writer类为字符流提供API和部分实现。字符流读和写操作由FileReader类和FileWriter类提供支持。它们分别是Reader类和Writer类的子类。

48.请简要说明抽象类和接口的区别。

abstract class 在 Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface。

在abstract class 中可以有自己的数据成员,也可以有非abstarct的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是static final的,不过在 interface中一般不定义数据成员),所有的成员方法都是abstract的


四、写出下面程序执行的结果

49.本小题一共有三个类,类名分别为demo1、demo2和Exam49,编译这三个类都没问题,最后执行类名为Exam49对应的字节码文件。请写出执行的结果。

class Demo1

{ int x;

Demo1 (int a)  {x=a;}

void method()  {System.out.println("我是demo1类的方法!值是"+x);}

int getX()  {return x;}

}

class Demo2 extends Demo1

{ double x;

Demo2(int m,double n)  {super(m); x=n;}

void method()

{

double d2X=x;

int d1X =super.getX();

super.method();

System.out.println("我是类demo2的方法!值是"+x);

System.out.println("我获得的信息是:"+" d1X ="+ d1X +", d2X ="+ d2X);

}

}

public class Exam49

{ public static void main(String []args)

{   Demo2 obj=new Demo2(3,4.0);

    obj.method();

}

}

答案:我是demo1类的方法!值是3

我是类demo2的方法!值是4.0

我获得的信息是:d1X=3,d2X=4.0

50.本小题有一个类,类名为Exam50,编译这个类没问题,最后执行该类对应的字节码文件。请写出执行的结果。

public class Exam50

{

public static void main(String args[ ])

   {

int sum = 0 ;

int []a={10,20,30,40,50,60,70,80}

for(int i = 0;i<a.length;i++)

         if(i%2= =0 )

{

s += a[i];

System.out.print (a[i] +"  ");

          }

      System.out.println();

System.out.println("sum= "+sum);

   }

}

答案:10 30 50 70

    Sum=160

49.本小题一共有三个类,类名分别为Aparentclass、Achildclass和Exam49,编译这三个类都没问题,最后执行类名为Exam49对应的字节码文件。请写出执行的结果。

class Aparentclass

{

private int aVal;

public void printclassName()

{ System.out.println("Aprarentclass");}

}

   class Achildclass extends Aparentclass

{

   public void printclassName()

  {

System.out.println("I am Achildclass");

    System.out.println("My parent is");

    super.printclassName();

  }

}

public class Exam49

{

public static void main(String []args)

{

Achildclass child=new Achildclass();

child.printclassName();

}

}

答案:I am Achildclass

   My parent is

   Aprarentclass


五、程序编程题

54.编写一个Java应用程序,输出200到300间之间能同时被3和5整除的数,每行输出5个数。

答案:public class Exam54

{

public static void main(String []args)

{

int i,j=0;

        for(i=200;i<=300;i++)

        {

          if(i%3==0&&i5==0)

          {

            System.out.print(i+" ");

            j++;

          }

          if(j%5==0)

           System.out.println();

        }

 }

}

55.编写一个Java应用程序,从键盘输入某职工的工资总额(G),计算该职工应交纳的个人收入所得税。计税办法是:当G<=800元时,免交个人所得税;800<G<=1500元时,按2%的税率纳税;1500<G<3000元时,按5%的税率纳税;3000<G<=5000元时,按8%的税率纳税;G>5000元时,按10%的税率纳税。

答案:import javax.swing.*;

public class Exam55

{

public static void main(String []args)

{

long m,G;

float sum;

String result=(String)JOptionPane.showInputDialog(null," 工资总额","输入对话框",JOptionPane.PLAIN_MESSAGE,null,null,null);

m=Integer.parseInt(result);

if(G<=800)                          sum=0;

else if(G>800&&G<=1500)             sum=G*0.02;

else if(G>1500&&G<=3000)            sum=G*0.05;

else if(G>3000&&G<=5000)            sum=G*0.08;

else                                sum=G*0.1

 System.out.println("sum="+sum);

}

}  

55.编写一个Java应用程序,求100~200之间的素数,每行输出5个素数。

public class Exam55

{

public static void main(String []args)

{

int i,j,count=1;

for(i=100;i<=200;i++)

{

for(j=2;j<=i/2;j++)

  if(i%j==0)

    break;

    

    if(j>i/2)

    {

     System.out.print(" "+i);

     count++;

    }

  

    if(count%6==0)

    {

      System.out.println();

      count=1;

    }

    }

}

}

55.水仙花是一个n(n>=3)位数字的数,它等于每个数字的n次幂之和。例如,153=13+53+33。编写一个Java应用程序,求小于999的所有水仙花数。

答案:public class Exam54

{

     public static void main(String []args)

     {

   int i,b,s,g,sum;

   for(i=100;i<=999;i++)

  {

b=i/100;

s=i%100/10;

g=i%10;

sum=b*b*b+s*s*s+g*g*g;

if(i==sum)

  System.out.print(" "+i);

  }

     }

}

相关文章:

Java --- 期末复习卷

一、单选题 1&#xff0e;所有Java应用程序主类必须有一个名叫( )的方法。[ ] A&#xff0e;method B&#xff0e;main() C&#xff0e;java() D&#xff0e;hello 2&#xff0e;编写并保存了一个Java程序文件之后&#xff0c;( )它。[ …...

File类与IO流相关面试知识(一)

一.java.io.File类 作用&#xff1a;它的作用是用来表示某个文件或文件夹&#xff08;文件夹又称为目录&#xff09; 如何用File类的对象表示一个文件或目录的呢&#xff1f; API文档中描述&#xff1a;文件和目录路径名的抽象表示形式 解释&#xff1a;如果要表示一个文件…...

009 - STM32学习笔记 - 中断

009 - STM32学习笔记 - 中断 这节的内容&#xff0c;野火的官方视频我反复看了好几次&#xff0c;但是感觉火哥在这块讲解的特别绕&#xff0c;理解起来很吃力&#xff0c;后来在看了一下其他老师的视频&#xff0c;结合一些书本资料和官方手册&#xff0c;才搞清楚STM32中断该…...

分享几种js格式化金额的方法

一、使用 Intl.NumberFormat 构造函数 这是 JavaScript 中格式化金额的最常见方法。Intl.NumberFormat()构造函数接受两个参数&#xff1a;语言环境和选项。语言环境是为其格式化金额的语言和地区。选项是一组控制金额格式的属性。例如&#xff0c;可以使用样式属性来指定货币…...

圣墟传说H5手工端搭建架设教程

圣墟传说H5手工端搭建架设教程 大家好&#xff0c;我是艾西。今天给大家带来的游戏是由小说改编而来的大型玄幻MMORPG仙侠手游&#xff0c;也是比较老的游戏了虽然你可能没有怎么听过&#xff0c;但总会有一批喜欢的玩家热衷于它。 那么让我们直接进入正题开始操作&#xff1…...

编程(40)----------单例模式

在简单总结单例模式之前, 需要了解一下背景知识-----为何会有单例模式? 想象一个这样的场景, 打游戏的时候, 尝试很多次, 都未通关. 这种情况下是否会考虑查一下攻略? 一个好的攻略甚至可能连每一关的每一个场景由多少只怪物都说的清清楚楚. 再比如, 在以前上学的时候, 为了…...

Java开发 - 让你少走弯路的Redis主从实现单节点哨兵模式

前言 前一篇中&#xff0c;我们讲解了Redis主从的搭建方式&#xff0c;其实很简单呐有木有&#xff0c;都是配置&#xff0c;连句代码都没有&#xff0c;是不是感觉高估了Redis主从的搭建方式&#xff1f;哈哈&#xff0c;没关系&#xff0c;跟着博主&#xff0c;包你全会。今…...

Java的Atomic原子类

Java SDK 并发包里提供了丰富的原子类&#xff0c;我们可以将其分为五个类别&#xff0c;这五个类别提供的方法基本上是相似的&#xff0c;并且每个类别都有若干原子类。 对基本数据类型的变量值进行原子更新&#xff1b;对对象变量的指向进行原子更新&#xff1b;对数组里面的…...

离线语音控制新方案,NRK3303语音识别芯片在智能风扇的应用

随着科技的不断发展&#xff0c;智能家居已经成为人们日常生活中不可或缺的一部分&#xff0c;涌现出越来越多的智能设备&#xff0c;如智能门锁、智能灯泡、智能冰箱等&#xff0c;这些设备为人们的生活带来了更多的便利和创新。其中作为常见的风扇通过添加智能语音控制功能&a…...

在树莓派3B+上安装Pytorch1.7

在树莓派3B上安装Pytorch1.7(应该是最简单的方法了)_package libopenblas-dev has no installation cand_Chauncey_Wang的博客-CSDN博客由于项目要求&#xff0c;我需要在树莓派上安装pytorch这就有几个问题&#xff0c;首先吧&#xff0c;咱们和外面之间有一道长城&#xff0c…...

Java性能权威指南-总结4

Java性能权威指南-总结4 Java性能调优工具箱操作系统的工具和分析CPU运行队列磁盘使用率网络使用率 Java监控工具基本的VM信息 Java性能调优工具箱 操作系统的工具和分析 CPU运行队列 快速小结 检查应用性能时&#xff0c;首先应该审查CPU时间。优化代码的目的是提升而不是…...

c语言全局变量和局部变量问题汇总

✅作者简介&#xff1a;嵌入式领域优质创作者&#xff0c;博客专家 ✨个人主页&#xff1a;咸鱼弟 &#x1f525;系列专栏&#xff1a;单片机设计专栏 &#x1f4c3;推荐一款求职面试、刷题神器&#x1f449;注册免费刷题 1、关键字static的作用是什么&#xff1f; 定义静态变…...

14.3:给定一个由字符串组成的数组strs,必须把所有的字符串拼接起来,返回所有可能的拼接结果中字典序最小的结果

给定一个由字符串组成的数组strs&#xff0c;必须把所有的字符串拼接起来&#xff0c;返回所有可能的拼接结果中字典序最小的结果 贪心写法 首先注意的一点是&#xff1a;如果两个字符串的长度相同&#xff0c;“abc”&#xff0c;“abd”&#xff0c;肯定是“abc”的字典序最…...

C++ 项目实战:跨平台的文件与视频压缩解压工具的设计与实现

C实战&#xff1a;跨平台文件与视频压缩解压工具的设计与实现 一、引言&#xff08;Introduction&#xff09;1.1 项目背景与目标1.2 技术选型&#xff1a;C、FFmpeg、libarchive、libzip、QtCFFmpeglibarchivelibzipQt 二、设计思路与框架&#xff08;Design Philosophy and F…...

C和指针(二)数据

数据类型 1&#xff0c;C语言中仅有四种基本数据类型——整型、浮点型、指针、聚合类型&#xff08;数组、结构等&#xff09;。 2&#xff0c;整型包括字符、短整型、整型、长整型&#xff0c;且可以分为有符号和无符号两种版本。 1&#xff09;长整型至少和整型一样长&#…...

PyTorch基础学习(一)

一.简介 PyTorch是一个基于Python的开源机器学习框架&#xff0c;它提供了丰富的工具和接口&#xff0c;用于构建和训练深度学习模型。PyTorch的主要特点包括&#xff1a; 动态计算图&#xff1a; PyTorch使用动态计算图&#xff0c;这意味着在模型构建过程中可以实时地进行计…...

chatgpt赋能python:Python代做:让您的网站更友好的SEO利器

Python代做&#xff1a;让您的网站更友好的SEO利器 如果您是一位网站管理员或者SEO工程师&#xff0c;您一定知道SEO对于网站的重要性。那么在SEO中&#xff0c;Python代做可以为您提供什么&#xff1f;在本文中&#xff0c;我们将通过介绍Python代做的技术和方法&#xff0c;…...

2022年都快结束了,还有人不会安卓录屏?在安卓上录制屏幕的的实现方式

前言 在我之前的文章 《以不同的形式在安卓中创建GIF动图》 中&#xff0c;我挖了一个坑&#xff0c;可以通过录制屏幕后转为 GIF 的方式来创建 GIF。只是当时我只是提了这么一个思路&#xff0c;并没有给出录屏的方式&#xff0c;所以本文的内容就是教大家如何通过调用系统 A…...

px rem em rpx 区别 用法

任意浏览器的默认字体高都是16px。所有未经调整的浏览器都符合: 1em16px。那么12px0.75em,10px0.625em。为了简化font-size的换算&#xff0c;需要在css中的body选择器中声明Font-size62.5%&#xff0c;这就使em值变为 16px*62.5%10px, 这样12px1.2em, 10px1em, 也就是说只需要…...

忆享聚焦|ChatGPT、AI、网络数字、游戏……近期热点资讯一览

“忆享聚焦”栏目第十四期来啦&#xff01;本栏目汇集近期互联网最新资讯&#xff0c;聚焦前沿科技&#xff0c;关注行业发展动态&#xff0c;筛选高质量讯息&#xff0c;拓宽用户视野&#xff0c;让您以最低的时间成本获取最有价值的行业资讯。 目录 行业资讯 1.科技部部长王志…...

[Daimayuan] 树(C++,动态规划,01背包方案数)

有一棵 n n n 个节点的以 1 1 1 号点为根的有根树。现在可以对这棵树进行若干次操作&#xff0c;每一次操作可以选择树上的一个点然后删掉连接这个点和它的儿子的所有边。 现在我们想知道对于每一个 k k k ( 1 ≤ k ≤ n 1≤k≤n 1≤k≤n)&#xff0c;最少需要多少次操作能…...

如何选择源代码加密软件

&#xff08;SDC沙盒&#xff09;和DLP、文档加密、云桌面等&#xff0c;其优缺点做客观比较如下&#xff1a; 比较内容安全容器(SDC沙盒)DLP文档加密云桌面代表厂家*信达卖咖啡、赛门贴科亿*通、IP噶德、*盾、*途四杰、深*服设计理念以隔离容器加准入技术为基础&#xff0c;构…...

TO-B类软件产品差异化

产品差异化&#xff0c;是在市场众多同质化产品中&#xff0c;突出自身产品亮点的重要方式。对于客户来讲其选择是多种多样的&#xff0c;与其花费大量的时间研究每一家产品的特点&#xff0c;还不如直接选择品牌更大、价格更低的产品来的直接&#xff0c;因此显而易见的突出产…...

设计模式之美-实战一(上):业务开发常用的基于贫血模型的MVC架构违背OOP吗?

领域驱动设计&#xff08;Domain Driven Design&#xff0c;简称DDD&#xff09;盛行之后&#xff0c;这种基于贫血模型的传统的开发模式就更加被人诟病。而基于充血模型的DDD开发模式越来越被人提倡。所以&#xff0c;我打算用两节课的时间&#xff0c;结合一个虚拟钱包系统的…...

ChatGPT如何训练自己的模型

ChatGPT是一种自然语言处理模型&#xff0c;它的任务是生成自然流畅的对话。如果想要训练自己的ChatGPT模型&#xff0c;需要进行大量的数据收集、预处理、配置训练环境、模型训练、模型评估等过程。本文将详细介绍这些过程&#xff0c;帮助读者了解如何训练一个高品质的ChatGP…...

springboot使用线程池的实际应用(一)

在实际Spring Boot项目中&#xff0c;我们可以使用Java的原生多线程或者使用Spring自带的线程池进行多线程编程。多线程的好处在于能够提高应用程序的运行效率&#xff0c;特别是在某些计算密集型场景下。以下是一些使用多线程的典型场景&#xff1a; 并发处理请求&#xff1a…...

ESP-8266学习笔记

1、学习地址 【XMF09F系列资源】基于MicroPython的ESP8266物联网应用开发-赛教资源目录汇总-小蜜蜂笔记 Quick reference for the ESP8266 — MicroPython latest documentation 2、MicroPython及相关开发资源 3、固件烧录与uPyLoader的使用 烧录教程参考: https://www.…...

Java泛型简单的使用

前言 Java里面的泛型在实际开发中运用的很多&#xff0c;学过C的同学一定知道C的模板&#xff0c;而Java中的泛型&#xff0c;一定程度上和它还是挺像的。 相信写Java的人&#xff0c;大都有用过List的实现类ArrayList。在Java没有泛型之前&#xff0c;它的内部是一个Object的…...

深度探索:Qt CMake工程编译后的自动打包策略

深度探索&#xff1a;Qt CMake工程编译后的自动打包策略 1. 引言&#xff08;Introduction&#xff09;1.1 Qt和CMake的基本概念&#xff08;Basic Concepts of Qt and CMake&#xff09;1.2 自动打包的重要性&#xff08;Importance of Automatic Packaging&#xff09; 2. Qt…...

2.7 编译型和解释型

2.7 编译型和解释型 前面我们使用java和javac命令把Hello&#xff0c;World&#xff01;在控制台输出。那为什么输出&#xff0c;这里我们需要掌握两个知识点。编译型语言和解释型语言。在计算机的高级编程语言就分为编译型语言和解释型语言。而我们的Java既有编译型的特点也有…...