Java 经典练习题_Day06

面向对象与面向过程的比较

类与对象的关系

成员变量和局部变量

构造方法

this

构造代码块

局部代码块

匿名对象

一、 选择题

1.下列各项中关于面向对象及面向过程的说法错误的是:(BDE)

  A.  面向对象要重点关注的是流程中的每一个步骤

  B.  面向对象是基于面向过程的

  C.  面向对象一定是优于面向过程的

  D.  如果事务相对复杂,可以考虑使用面向对象的方式来完成

  E.  面向对象和面向过程都是常见的思维方式

2.对于代码:

结果为: (C)

  A.  编译不通过

  B.  输出10 10

  C.  输出10 20

  D.  输出0 20

3.下列关于构造函数的说法正确的是:(ABE)

  A.  每个类中都有至少一个构造方法

  B.  一个类中可以有多个构造方法

  C.  构造方法可以有返回值

  D.  构造方法可以有多个参数

  E.  可以通过new关键字调用一个类的构造方法创建该类对象

4.对于代码:

结果为:(c)

  A.  编译出错

  B.  输出10

  C.  输出20

  D.  输出40

  E.  输出0

5.对于代码:

的输出结果为:(C)

  A.  编译不通过

  B.  输出A B C

  C.  输出A C B

  D.  输出C B A

6.对于代码:

输出结果为:(B)

  A.  编译出错

  B.  输出10 11

  C.  输出10 10

  D.  输出11 11

解析:

public static void changeInt(int value){ 
        value++;// 没有return结果,所以结果是10
    }

7.对于代码:

输出结果为:

  A.  编译出错

  B. 输出100 200

  C. 输出100 100

  D. 输出0 200

二、简答题

1.对应代码:

该程序能否编译通过?如果可以请写出运行结果;如果不可以请说明原因并修改。

2.对于代码:

请写出运行结果:

3.对于代码

这个程序能否编译通过?如果可以,输出结果是什么?如果不可以,则应该如何修改?

4.程序改错


三、编程题

1. 复数概念如下:

每个复数都有实部和虚部。

例如: 3 + 5i,3为实部,5i为虚部。

其中,i 称为虚数单位,有 i * i = -1。

两个复数进行加法运算,运算时实部与实部相加,虚部与虚部相加。

例如:

(1.5 – 3i) + (2.3 + 2.4i) = (1.5+2.3) + (-3 + 2.4)i = 3.8 – 0.6i

两个复数进行减法运算,与加法运算类似。

两个复数进行乘法运算,其过程如下:

(a+bi) * (c + di) = ac + adi + bci + bd(i*i) = (ac-bd) + (ad+bc)i

例如:

(3+5i) *(4+6i) = (3*4-5*6) +(3*6+4*5) i = -18 + 38i

写一个类Complex,用来表示复数。

这个复数类具有两个属性:

  double real,表示实部;

  double im,表示虚部。

  并为Complex 类增加add、 sub、 mul 方法,分别表示复数的加法、减法和乘法运算。

  其中, add 方法的声明如下:

  public Complex add(Complex c) //表示当前Complex 对象与参数c对象相加

  public Complex add(double real) //表示当前 Complex 对象与实数 real相加
原文地址:https://www.cnblogs.com/chuijingjing/p/9448679.html