第二次作业

1.个人的学习进度条

 代码行数(新增/累积)博客字数(新增/累积)学习时间(新增/累积)重要成长
目标 1000行 3000 70小时 了解Java并且可以编写正确程序
第十一周 100/100 0 10 了解Java 学循环语句 if语句等
第十二周 200/250 0 10 学面向对象,定义类,域等
第十三周 250/300 1500/2000 8 学习了解面向对象程序设计

2.

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包
public class Airplane  //创建类Airplane
{
    public void takeoff()  //无返回值方法 takeOff()
    {
        System.out.println("----------------");
        System.out.println("airplane takeOff");
    }
    public void land();  //无返回值方法 land()
    {
        System.out.println("----------------");
        System.out.println("airplane land");
    }
    public void fly();  //无返回值方法 fly()
    {
        System.out.println("----------------");
        System.out.println("airplane fly");
    }
}

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

  • 声明整型变量x,
  • 构造方法实现以下功能,为x赋值为4,打印输出"in superClass : x = [x的值]"
  • 定义方法aMethod(),打印输出"in superClass.aMethod()"
package com.cvit;
public class SuperClass
{
    public int x; //声明整型变量x
    public SuperClass()  //构造方法实现以下功能,为x赋值为4,打印输出"in superClass : x = [x的值]"
    {
        x=4;
        System.out.println("n subClass : x = ["+x"]");
    }
    public void aMethod()  //定义方法aMethod(),打印输出"in superClass.aMethod()"
    {
        System.out.println("in superClass.aMethod("+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;
public class SubClass1
{
    public int x; //声明整型变量x
    public SubClass1()    //为x赋值为6,打印输出"in subClass : x = [x的值]"
    {
        x=6;   
        System.out.println("n subClass1 : x = ["+x"]");
    }
    public void aMethod(SuperClass)   //定义方法aMethod() 调用父类的构造方法;
    {
        System.out.println("in SubClass1.aMethod()");
        System.out.println("super.x =["+SuperClass.x"]  sub.x=["+SubClass1.x"]");
    }
    public void aMethod(int a, int b)  //定义方法aMethod(int a, int b)返回a+b的值

    {
        int c=a+b;
        return c;
    }
}

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

  • 定义方法aMethod(),打印输出"in SubClass2.aMethod()"
  • 定义方法aMethod(int a, int b),返回a+b的值
    package com.cvit;
    public class SubClass2
    {
        public void aMethod()
        {
            System.out.println("in SubClass2.aMethod()");
        }
        public void aMethod(int a, int b)
        {
    
            int c=a+b;
            return c;
        }
    }

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

    • 定义方法aMethod(),打印输出"in SubClass3.aMethod()"
    • 定义方法aMethod(int a, int b),返回a+b的值
      package com.cvit;
      public class SubClass3
      {
          public void aMethod()
          {
              System.out.println("in SubClass3.aMethod()");
          }
          public void aMethod(int a, int b)
          {
              int c=a+b;
              return c;
          }
      }

       

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方法;
    import com.cvit Flyer;
    import com.cvit Airplane;
    import com.cvit SuperClass;
    import com.cvit SubClass1;
    import com.cvit SubClass2;
    import com.cvit SubClass3;
    public class Main
    {
        public static void chooseClass2(SubClass2 sub2)
        {
            return=0;
        }
        public static void chooseClass3(SubClass3 sub3)
        {
            return=0;
        }
        public static void main(String args[])
        {
            punlic int x=7;
            Airplane airplane=new airplane();
            Airplane.takeoff();
            SubClass1 sub1=new sub1();
            sub1.aMethod();
            int a sub1.aMethod(x,x);
            Airplane.fly();
            SubClass2 sub2=new sub2();
            sub2.aMethod();
            SubClass3 sub3=new sub3();
            sub3.aMethod();
            chooseClass sub2=new sub2();
            SubClass2.aMethod();
        }
    }

     

这次考试整体感觉时间都很赶,不再像上次一样游刃有余了,虽然上次做的不是很好,但是起码有方法有头绪,感觉这次考试自己摸不到头脑,反思自己,最近学习不够,放在Java上的时间也不够多,平时课堂上打代码起码能够操作下来,这次却是忙得焦头烂额,但是根据这次考试找到了最近学习上的不足和缺点,在基础知识上掌握不牢,出题方式全是在了解基础知识的基础上才能知道用哪种语句的,然而我虽然大多数都会用,却不太知道,题目中的那句话应该用哪种语句,考试后,反思自我,多翻书,多背知识点:-)






posted @ 2017-11-18 14:25  魏暄  阅读(198)  评论(1)    收藏  举报