第二次作业

Posted 小磕巴江流儿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二次作业相关的知识,希望对你有一定的参考价值。

  代码行数/累积 博客字数/累积 学习时间/累积
目标 1500 3000 80
第十一周 300 0/0 20

第十二周

500 0/0 20
第十三周 700   40

1.分清主函数,进行定义

2. 弄清各个之间的关系,调用的要求

3. 知识点 :1.类

      2.继承

      3.对象

      4.定义方法

      5. 构造方法,静态方法 

 

1. 创建接口Flyer,封装在com.cvit包中,包含三个方法

  • 无返回值 takeOff()
  • 无返回值 land()
  • 无返回值 fly()
  • package com.cvit;                                        //封装在com.cvit
    interface Flyer                                             //创建接口Flyer
    {                                                                  
    public void takeOff();                                  // 方法takeoff 无返回值
    public void land();                                       //  方法land无返回值
    public void fly();                                           //方法 fly 无返回值
    }

2. 创建类Airplane,封装在com.cvit包中,实现Flyer接口

  • 无返回值 takeOff(),打印输出第一行"----------------",第二行"airplane takeOff"
  • 无返回值 land(),打印输出第一行"----------------",第二行"airplane land"
  • 无返回值 fly(),打印输出第一行"----------------",第二行"airplane fly"

package com.cvit;                                                   //封装在com.cvit
class Airplane implements Flyer                             //创建类Airplane,实现Flyer 接口
{
public void takeOff()                                               //创建方法takeoff 
{
System.out.println("------------");                             //打印输出------------------
System.out.println("airplane takeOff");                   //打印输出"airplane takeOff"
}
public void land()                                                     //创建方法land
{
System.out.println("------------");                              //打印输出------------------
System.out.println("airplane land");                        //打印输出"airplane land"
}
public void fly()                                                        //创建方法FLY
{
System.out.println("------------");                             //打印输出------------------   
System.out.println("airplane fly");                           //打印输出"airplane fly"
}
}
}

3. 创建类SuperClass,封装在com.cvit包中

  • 声明整型变量x,
  • 构造方法实现以下功能,为x赋值为4,打印输出"in superClass : x = [x的值]"
  • 定义方法aMethod(),打印输出"in superClass.aMethod()"

 

package com.cvit;                                           //封装在com.cvit
class SuperClass                                            //创建类SuperClass
{
public int x;                                                      //定义整形变量
public SuperClass()                                         //方法Superclass
{
x=4;                                                                  //为x赋值4
System.out.println("in superClass:x="+x);         //输出x的值
}
public void aMethod()                                      //定义方法amethod
{
System.out.println("in superClass.aMethod()");     //打印输出在类superclass amethod 
}
}

4. 创建类SubClass1,封装在com.cvit包中

    • 声明整型变量x,
    • 构造方法实现以下功能,为x赋值为6,打印输出"in subClass : x = [x的值]"
    • 定义方法aMethod()
      调用父类的构造方法;
      打印输出"in SubClass1.aMethod()";
      打印输出"super.x = [父类中x的值], sub.x=[子类中x的值]";
    • 定义方法aMethod(int a, int b),返回a+b的值
    • package com.cvit;                                        //封装在com.cvit
      class SubClass1 extends SuperClass          //类subclass 继承 superclass
      {
      public int x;                                                  //定义一个整形变量
      public SubClass1()                                      //定义方法subclass1
      {
      x=6;                                                             //为x赋值
      System.out.println("in subClass:x="+x);       //输出
      }
      public void aMethod()                                 //方法amethod
      {
      super.aMethod();                                        //
      System.out.println("super.x="+super.x+"sub.x="+x); //打印输出父类,子类
      }
      public int aMethod(int a,int b)                           //方法amethod ,两个参数 a,b
      {
      int s=a+b;
      return s;                                                           //返回
      }
      }

        

5. 创建类SubClass2,封装在com.cvit包中

  • 定义方法aMethod(),打印输出"in SubClass2.aMethod()"
  • 定义方法aMethod(int a, int b),返回a+b的值

package com.cvit;                                       //封装在com.cvit
class SubClass2                                          //创建类subclass2
{
public void aMethod()                                      //定义方法amethod
{
System.out.println("in SubClass2.aMethod()");  //输出
}
public int aMethod(int a ,int b)                               //方法amethod ,两个参数 a,b
{
int s=a+b;
return s;                                                               //返回  
}
}

6. 创建类SubClass3,封装在com.cvit包中

  • 定义方法aMethod(),打印输出"in SubClass3.aMethod()"
  • 定义方法aMethod(int a, int b),返回a+b的值

package com.cvit;                                             //封装在com.cvit
class SubClass3                                                 //创建类subclass3
{
public void aMethod()                                          //定义方法amethod 
{
System.out.println("in SubClass3.aMethod()");       //输出
}
public int aMethod(int a ,int b)                                //方法amethod ,两个参数 a,b
{
int s=a+b;
return s;                                                                  //返回  
}
}

7. 创建主类Main,封装在com.cvit包中

      • 定义返回值为空的静态方法chooseClass(SubClass2 sub2)
      • 定义返回值为空的静态方法chooseClass(SubClass3 sub3)
      • 程序的入口方法实现
        定义整型变量x,赋值为7;
        创建Airplane类的对象airplane;
        调用Airplane类的takeOff方法;
        创建SubClass1类的对象sub1;
        调用SubClass1类的aMethod方法;
        调用SubClass1类的aMethod方法,传值(x, x),将得到的结果赋值给x;
        调用Airplane类的fly方法;
        创建SubClass2类的对象sub2;
        创建SubClass3类的对象sub3;
        调用chooseClass方法,将sub2作为参数传入;
        调用SubClass2类的aMethod方法,传值(x, x),将得到的结果赋值给x;
        调用chooseClass方法,将sub3作为参数传入;
        调用SubClass3类的aMethod方法,传值(x, x),将得到的结果赋值给x;
        调用Airplane类的fly方法;
    • package com.cvit;                                        //封装在com.cvit                                 
      public class Main                                           // 创建类m 
      {
      public static void chooseClass(SubClass2 sub2)        // 定义一个空方法
      {

      }
      public static void chooseClass(SubClass3 sub3)            // 定义一个空方法 


      }
      public static void main (String args[])                             //程序入口
      {
      int x=7;                                                                           //x赋值7
      Airplane airplane=new Airplane();                                 //类airplane 实例化 创建对象airplane
      airplane.takeOff();                                                         //调用takeoff
      SubClass1 sub1=new SubClass1();                             //类subclass  实例化 创建对象
      sub1.aMethod();                                                           //调用amethod
      int a =sub1.aMethod(x,x);                  
      System.out.println(a);                                                    //输出a
      airplane.fly();                                                                 //调用
      SubClass2 sub2=new SubClass2();                               //类subclass2  实例化 创建对象
      SubClass3 sub3=new SubClass3();                               //类subclass3  实例化 创建对象
      chooseClass(sub2);                                                      
      int b =sub2.aMethod(x,x);
      System.out.println(b);                                                     //输出
      chooseClass(sub3);
      int c =sub3.aMethod(x,x);
      System.out.println(c);
      airplane.fly();
      }
      }

以上是关于第二次作业的主要内容,如果未能解决你的问题,请参考以下文章

软件测试作业第二次作业

信号与系统 2023(春季) 作业参考答案 - 第二次作业

第二次作业

第二次作业

第二次作业

第二次作业——题目一