好文档 - 专业文书写作范文服务资料分享网站

新编解析JAVA程序设计第三章课后答案

天下 分享 时间: 加入收藏 我要投稿 点赞

return name;

}

public boolean getSex(){

return sex;

}

public int getAge(){

return age;

}

public void setAge(int a){

age = a;

}

public String toString() {

return \学号:\姓名:\性别:\年龄:\

}

public static void main(String args[]) {

Student stu =new Student(\,\张三\,true,20);

System.out.println(stu.toString());

} }

12.如何定义静态成员变量?静态成员变量有什么特点?静态方法有何特点?为什么有的时候需要定义静态方法?静态方法处理的成员变量有什么要求?

答:在定义成员变量的时候前面加上static修饰符,该变量即成为静态成员变量,静态成员变量也称为类变量。

类变量和实例变量的区别是,不管为类创建了多少对象,系统仅在第一次调用类的时候为类变量分配内存,所有对象共享该类的类变量。因此,可以通过类本身或者某个对象来访问类变量。

当定义一个方法的时候,使用static关键字说明该方法是类方法(静态方法)而不是实例方法。当第一次调用含类方法的类时,系统只为该类的类方法创建一个版本。这个版本被该类和该类的所有实例所共享。

调用类方法时不需要实例化类,因此对那些不想实例化的类,或者不需要实例化的类,但又需要调用该类的方法,这时就可以把该方法定义为类方法。

类方法只能操作类变量,不能访问在类中定义的实例变量,同时,类方法可以在类中被调用,不必通过创建一个实例对象来调用一个类方法,当然也可以在实例对象中调用类方法。

13.使用静态成员变量来计算内存中的实例化的对象数目。

public class Count {

private String name;

private static int number = 0; //计数Count对象生成的个数

Count() {

name = null;

number++;

}

Count(String n) {

name = n;

number++;

}

protected void finalize() {

//当有一个Count对象释放时会执行该方法,此时对number减1

System.out.println(\有一个Item对象释放了\

number--;

}

public static void main(String args[]) {

Count c1 = new Count();

Count c2 = new Count();

c1 = null;

System.out.println(\执行垃圾收集前Item对象的个数:\

+ number);

//强制执行垃圾收集,观察Count类中number值的变化

java.lang.System.gc();

System.out.println(\执行垃圾收集后Item对象的个数:\

+ number);

c1 = new Count();

java.lang.System.gc();

System.out.println(\执行垃圾收集后Item对象的个数:\

+ number); } }

14.定义一个计算矩形面积、立方体和球体体积的类。该类完成计算的方法用静态方法实现。

public class Calculate{

public static double calculateRectangleArea(

double height,double width){

return height * width ;

}

public static double calculateCubeVol(double x, double y, double z){

return x * y * z;

}

public static double calculateSphereVol(double r){

return (4/3) * 3.14 * r * r * r;

} }

15.设计一个表示用户的User类,类中的变量有用户名、口令(私有的)和记录用户个数的变量(静态的),定义类的3个构造方法(没有参数、有一个参数给用户名赋值、有两个参数给用户名和口令赋值)、获取和设置口令的方法、返回字符串表示的类信息的方法(包含用户名、口令)。编写应用程序测试User类。 答:

class User{

private String name, password;

private static int number;

User(){

name = null;password = null;n umber++; }

User(String n){

name = n; password = null; number++;

}

User(String n, String ps){

name = n; password = ps; nmuber++

}

public String getPassword(){ //密码全部以明文操作,没有使用加密算法

return password;

}

public setPassword(String ps){

password = ps;

}

public String toString() {

return \用户名:\口令:\ } }

public class Test{

User usr = new User(\张三\

usr.setPassword(\

usr.toString(); }

16.定义一个Company类,成员变量有公司名称、雇员列表、公司每年的总收入。该类的构造方法可能有如下形式:

public Company(String name) { }

也可以有更多其它形式的构造方法。或许还应该有如下方法:

public void setName(String name){ }

public String getName() { }

必须提供一个公共的dump方法来打印有关Company的信息,如公司名称、雇员和公司总收入。最后为Company类编写一个测试客户程序。

新编解析JAVA程序设计第三章课后答案

returnname;}publicbooleangetSex(){returnsex;}publicintgetAge(){returnage;}
推荐度:
点击下载文档文档为doc格式
02coy6hqbh1j03v4iv5u208bi7808n00a93
领取福利

微信扫码领取福利

微信扫码分享