第二次作业

 

代码行数(新增/累计)

博客字数(新增/累计)

学习时间(新增/累计)

重要成长

目标

1300行

8000字

130小时

了解JAVA程序设计

第十一周

200/200

600/600

10/10

学习标识符以及关键字和运算符,基本数据类型。

第十二周

200/400

800/1400

10/20

面向对象程序设计类,域,方法,实例对象,继承性,多态性

第十三周

100/500

2000/3400

15/35

变量作用域范围以及修饰词。

第十四周

......

.........

........

.........

 

根据题意共需创建六个类及一个主类,Airplane实现了Flyer接口,subClass1与SuperClass存在继承的关系。

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

 

 1 package com.cvit;//创建包 封装在com.cvit路径中
 2 
 3 public interface Flyer
 4 
 5 {
 6 
 7          public void takeOff();
 8 
 9          public void land();
10 
11          public void fly();
12 
13 }

 

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

 1  Airplane.java
 2 
 3 
 4 package com.cvit;
 5 
 6 public class Airplane implements Flyer//创建Airplane类,类中实现Flyer接口作用
 7 
 8 {
 9 
10          public void takeOff()
11 
12          {
13 
14                    System.out.println("---------------");
15 
16                    System.out.println("airplane takeOff");
17 
18          }
19 
20          public void land()
21 
22          {
23 
24                    System.out.println("---------------");
25 
26                    System.out.println("airplane land");
27 
28          }
29 
30          public void fly()
31 
32          {
33 
34                    System.out.println("---------------");
35 
36                    System.out.println("airplane fly");
37 
38          }
39 
40 }

 

 

 

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

 1  
 2 
 3 package com.cvit;
 4 
 5 public class SuperClass//创建SuperClass类
 6 
 7 {       
 8 
 9          int x;
10 
11          public void Superclass()
12 
13          {       
14 
15                    x=4;
16 
17                    System.out.println("in subClass:x="+x);
18 
19          }
20 
21          public void aMethod()
22 
23          {
24 
25                    System.out.println("in superClass.aMethod()");
26 
27          }
28 
29  
30 
31 }

 

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

 1 package com.cvit;
 2 
 3 class SubClass1 extends SuperClass                           子类继承父类    关键字 extends
 4 
 5 {
 6 
 7 public int x;
 8 
 9 public SuperClass()                                        定义构造方法 
10 
11 {
12 
13 x=6
14 
15 System.out.println("in subClass : x = "+x);
16 
17 }
18 
19 public void aMethod()                            定义普通方法 无返回值所以用void
20 
21 {
22 
23 super.aMethod();
24 
25 System.out.println("super.x =" +SuperClass," sub.x="+x);
26 
27 }
28 
29 public void aMethod(int a, int b)
30 
31 {
32 
33 return a;
34 
35 return b;
36 
37 }
38 
39 }

 

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

 

 1 package com.cvit;
 2 
 3 public class SubClass2//创建SubClass2类
 4 
 5 {
 6 
 7          public void aMethod()
 8 
 9          {
10 
11                    System.out.println("in SubClass2.aMethod()");
12 
13          }
14 
15          public int aMethod(int a,int b)
16 
17          {
18 
19                    int A;
20 
21                    A=a+b;
22 
23                    return A;
24 
25          }
26 
27 }

 

 

 

 

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

 

 1 package com.cvit;
 2 
 3 public class SubClass3//创建SubClass3类
 4 
 5 {
 6 
 7          public void aMethod()
 8 
 9          {
10 
11                    System.out.println("in SubClass3.aMethod()");
12 
13          }
14 
15          public int aMethod(int a,int b)
16 
17          {
18 
19                    int A;
20 
21                    A=a+b;
22 
23                    return A;
24 
25          }
26 
27 }

 

 

 

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

 

 1 package com.cvit;
 2 
 3 public class Main//创建主类main
 4 
 5 {
 6 
 7          public static void chooseClass(SubClass2 sub2)
 8 
 9          {
10 
11  
12 
13          }
14 
15          public static void chooseClass(SubClass3 sub3)
16 
17          {
18 
19  
20 
21          }
22 
23          public static void main(String args[])
24 
25          {
26 
27                    int x=7;
28 
29                    Airplane airplane=new Airplane();//创建Airplane类的对象airplane;
30 
31                    airplane.takeOff();//调用Airplane类的takeOff方法;
32 
33                    SubClass1 sub1=new SubClass1();
34 
35                    sub1.aMethod();
36 
37                    int a=sub1.aMethod(x,x);
38 
39                    System.out.println(a);
40 
41                    airplane.fly();
42 
43                    SubClass2 sub2=new SubClass2();
44 
45                    SubClass3 sub3=new SubClass3();
46 
47                    chooseClass(sub2);
48 
49                    int b=sub2.aMethod(x,x);//用x承接返回值
50 
51                    System.out.println(b);
52 
53                    chooseClass(sub3);
54 
55                    int c=sub3.aMethod(x,x);
56 
57                    System.out.println(c);
58 
59                    airplane.fly();
60 
61          }
62 
63 }

 

 

 

3.运行结果图

 

posted on 2017-11-17 21:40  孙晟博  阅读(245)  评论(7编辑  收藏  举报