| 代码行数(新增/累计) | 博客字数(新增/累计) | 学习时间(新增/累计) | 重要成长 |
目标 | 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=614 15 System.out.println("in subClass : x = "+x);16 17 }18 19 public void aMethod() 定义普通方法 无返回值所以用void20 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.运行结果图