加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

java编程思想第四版第七章习题

发布时间:2021-07-06 06:55:24 所属栏目:大数据 来源: https://www.jb51.cc
导读:(略) (略) (略) (略) 创建两个带有默认构造器(空参数列表)的类A和类B。从A中继承产生一个名为C的新,并在C内创建一个B类的成员。不要给C编写构造器。创建一个C类的对象并观察其结果。 package net.mindview.reusing; public class A { public A(){ System.
  1. (略)
  2. (略)
  3. (略)
  4. (略)
  5. 创建两个带有默认构造器(空参数列表)的类A和类B。从A中继承产生一个名为C的新,并在C内创建一个B类的成员。不要给C编写构造器。创建一个C类的对象并观察其结果。
    package net.mindview.reusing;
    
    public class A {
        public A(){
            System.out.println("A");
        }
    }
    
    
    package net.mindview.reusing;
    
     B {
         B(){
            System.B C extends A {
        B b = new B();
        static void main(String[] args) {
            C c =  C();
            
        }
    }

    ?

  6. (略)
  7. (略)
  8. (略)
  9. 创建一个Root类,令其含有名为Component1、Component 2、Component3的类的各一个实例(这些也由你写)。从Root中派生一个类Stem,也含有上述各“组成部分”。所有的类都应带有可打印出类的相关信息的默认构造器
     Root {
        private Component1 c1 =  Component1();
        private Component2 c2 =  Component2();
        private Component3 c3 =  Component3();
        
         Root() {
            System.Root);
            System.Root->c1Root->c2Root->c3);
        }
    
    }
    
    
    package net.mindview.reusing;
    
     Component1 {
    
         Component1() {
            System.Component1 Component2 {
    
         Component2() {
            System.Component2 Component3 {
    
         Component3() {
            System.Component3 Stem extends Root {
    
         Component3();
         Stem() {
            System.RootChildStem->c1Stem->c2Stem->c3);
        }
    
         main(String[] args) {
            Root t =  Stem();
    
        }
    
    }

    ?

  10. (略)可参考总结中的第5点,使用代理模式。
  11. (略)
  12. (略)
  13. (略)
  14. 在Car.java中给Engine添加一个service(),并在main()中调用该方法。
     Engine {
         start(){}
         rev(){}
         stop(){}
         Service() {
            System.Engine.Service);
        }
    }
    
     Wheel {
        void inflate(int psi){}
    }
    
     Window{
         rollup(){}
         rolldown(){}
    }
    
     Door{
        public Window window =  Window();
         open(){}
         close(){}
    }
    
     Car {
        public Engine engine =  Engine();
        public Wheel[] wheels = new Wheel[4];
        public Door left = new Door(),right =  Door();
         Car(){
            for(int i=0;i<4; i++){
                wheels[i] =  Wheel();
            }
        }
         main(String[] args) {
            Car car =  Car();
            car.left.window.rollup();
            car.wheels[0].inflate(72);
            car.engine.Service();
        }
    }

    ?

  15. (略)
  16. 创建一个名为Amphibian的类,由此继承产生一个成为Frog的类,在基类中设置适当的方法,在main()中,创建一个Frog向上转型至Amphibian, 然后说明所有方法都可工作
    //两栖动物
     Amphibian{
        交配
         mating(Amphibian amphibian){
            System.两栖动物交配);
        }
    }
    青蛙
     Frog extends Amphibian{
        
         main(String[] args) {
            Frog frog =  Frog();
            frog.mating(frog);
            
        }
    }

    ?

    ?

  17. 修改练习16,使Frog覆盖基类中方法的定义。请留心main中都发生了什么
     Frog extends Amphibian{
         mating(Frog frog){
            System.青蛙交配);
        }
         Frog();
            frog.mating(frog);
            
        }
    }

    ?

  18. (略)
  19. (略)

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读