第四章
一、选择题
- B
- D
- AC
- CD
- C
二、简答题
-
面向过程适合简单任务,按照一定的步骤实现事务,而面向对象可以封装数据和功能,将大的问题分解成一个个小块,适合复杂的系统任务,但是底层还是使用的面向过程思想。
-
类是对象的抽象,对象是类的实体。
-
构造方法用于对象的初始化,也叫构造器,构造器是一个创建对象时被自动调用的特殊方法,目的是对象的初始化。构造器的名称应与类的名称一致。
-
this是创建好的对象的地址,代表当前对象,因此在构造方法之前也可以使用,this的用法如下:
- 当程序中产生二义性的时候,使用this来指明当前对象,普通方法中,this指向调用该方法的对象,在构造函数中,this指向正要初始化的对象。
- this调用重载的构造函数,避免相同的初始化代码,但只能在构造函数中,并且只能在第一句。
- this不能用于static方法中。
-
修饰变量:static声明的变量为静态成员变量,为类变量,声明周期和类相同。被static修饰的成员变量被类的所有对象所共享,其只有一份,省去内存空间。修饰成员函数:可以使用"类名.方法名"的方式操作方法,避免了先要new出对象的繁琐和资源消耗。static代码块:当new一个类对象时,static修饰的成员变量首先被初始化,随后是普通成员。也就是说,在创建对象时,static修饰的成员会首先被初始化
三、编程题
- 3.1~3.2 略
- 3.3 定义一个网络用户类,信息有用户 ID、用户密码、 email 地址。在建立类的实例时把以上三个信息都作为构造函数的参数输入, 其中用户 ID 和用户密码时必须缺省时 email地址是用户 ID 加上字符串"@gameschool.com"。
/** * @author huzhu * @date created in 2019-03-17 22:00 * @explaination */ public class WebUser { int id; //id String pwd; //密码 String email;//email地址 //构造方法1 WebUser(int id,String pwd){ this.id = id; this.pwd = pwd; this.email = this.id+"@gameschool.com" } //构造方法2 WebUser(int id,String pwd,String emial){ this(id,pwd); this.email = email; } public static void main(String[] args) { WebUser me = new WebUser(100,"123456"); } }
第五章
选择题
- A
- A
- D
- C
- AC