• 《Java技术》第三次作业


    (一)学习总结
    1.阅读下面程序,分析是否能编译通过?如果不能,说明原因。应该如何修改?程序的运行结果是什么?为什么子类的构造方法在运行之前,必须调用父 类的构造方法?能不能反过来?

    编译不能通过,super关键字应该放在子类构造方法的最前面。
    运行结果:
    2.阅读下面程序,分析程序中存在哪些错误,说明原因,应如何改正?正确程序的运行结果是什么?

    animal.sleep();错误;向上转型只能调用子类继承,不能调用子类新定义的方法;
    Dog dog = animal;错误;向下转型出现了错误;

    3.运行下列程序

    (1)程序的运行结果如下,说明什么问题?

    说明toString方法不写也可以被调用
    (2)那么,程序的运行结果到底是什么呢?利用eclipse打开println(per)方法的源码,查看该方法中又调用了哪些方法,能否解释本例的运行结果?
    源码: public String toString() {
    return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }
    (3)在Person类中增加如下方法

    重新运行程序,程序的执行结果是什么?说明什么问题?
    可参考教材P229
    当该类添加了toString方法后,覆盖了原有的方法。
    4.汽车租赁公司,出租汽车种类有客车、货车和皮卡三种,每辆汽车除了具有编号、名称、租金三个基本属性之外,客车有载客量,货车有载货量,皮卡则同时具有载客量和载货量。用面向对象编程思想分析上述问题,将其表示成合适的类、抽象类或接口,说明设计思路。现在要创建一个可租车列表,应当如何创建?
    思路:创建一个出租汽车抽象类,具有编号、名称和租金属性,定义两个接口,定义载客量接口,载重量借口。
    5.阅读下面程序,分析代码是否能编译通过,如果不能,说明原因,并进行改正。如果能,列出运行结果。

    不能通过编译。
    在类的声明中用implements子句来表示一个类使用某个接口,在类中可以使用接口中定义的常量,而且必须实现接口中定义的所有方法。

    6.其他需要总结的内容。
    (1)抽象类中可以有抽象方法也可以有普通方法
    (2)抽象类不能用new实例化,但他的子类可以,利用向上转型
    (3)子类非抽象类时必须重写抽象类中所有的抽象方法
    (4)在类中实现接口所定义的方法时,方法的声明必须与接口中所定义的完全一致。在类中实现接口所定义的方法时,必须显式地使用public修饰符,否则将被系统警告为缩小了接口中定义的方法的访问控制范围。
    (5)重载定义:方法名称相同,参数的类型或个数不同;对权限没有要求;范围:发生在一个类中;
    覆写定义:方法名称,参数的类型,返回值类型全部相同;被覆写的方法不能拥有更严格的权限;发生在继承类中。
    (二)实验总结
    实验四 1:思路:定义Bank类,输入属性;使用静态方法welcome()方法,借助输出语句将“欢迎来到建设银行”及基本操作“1.开户;2.存款;3.取款;4.退出;请选择您需要的服务选项”。然后通过构造方法实现。
    2:(1)定义员工类,具有姓名、年龄、性别属性。
    (2)定义管理层类,继承员工类,有自己的属性职务和年薪
    (3)定义职员类,继承员工类,并有自己的属性所属部门和月薪。
    (4)定义一个测试类,进行测试。
    3:设计一个平面图形抽象类和一个立体图形抽象类;设计球类、圆柱类,圆锥类、矩形类、三角形类、圆类,分别继承平面图形抽象类和立体图形抽象类。
    实验五:定义一个宠物接口,含有获得价格、数量、种类、品种、编号、改变数量的方法;创建Cat类和Dog类,并完成get(),set()方法。
    (三)代码托管(务必链接到你的项目)

  • 相关阅读:
    根据时间段查询数据并按照降序排列
    Json数组(以[ ] 中括号开头)字符串转为json对象
    Java 后台请求第三方系统接口详解
    Map 集合 和 String 字符串相互转换工具类
    并发工具类——CountDownLatch、CyclicBarrier、Semaphore与Exchanger
    AQS相关
    Atomic原子类
    CAS相关
    synchronized关键字相关
    谈谈对volatile关键字的理解
  • 原文地址:https://www.cnblogs.com/zpl0120/p/8886748.html
Copyright © 2020-2023  润新知