码迷,mamicode.com
首页 > 其他好文 > 详细

第二次作业

时间:2017-11-17 21:03:30      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:http   文件   pad   定义类   c11   静态方法   构造   入口   string   

  代码行数/累积 博客字数/累积 学习时间/累积
目标 1000 10000 100
第十一周 50/50 0/0 3/3
第十二周 100/150 0/0 7/10
第十三周 160/310   10/20

前6个都是定义,所以静下来一个一个打
打到主函数的时候,一行一行看,慢慢打
主要用到几个知识点;
定义类 定义接口 继承 创建对象 定义有无返回值的方法 定义构造方法 定义静态方法 调用 封装方法
进行编译的时候出现了错误,主要有几点:
1.在编译是没有加 -d . 所以就没有生成文件夹 没打包成功 导致出现了 找不到类/符号的错误
2.再定义有返回值的时候忘记写返回值类型了
3.定义静态方法是没加方法体

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

  • 无返回值 takeOff()
  • 无返回值 land()
  • 无返回值 fly()
package com.cvit;            封装方法 关键字package
interface Flyer
{
public void takeOff();     定义三个方法 因为接口默认是抽象的 所以没有方法体 要在子类体现
public void land();
public void fly();
}

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

  • 无返回值 takeOff(),打印输出第一行"----------------",第二行"airplane takeOff"
  • 无返回值 land(),打印输出第一行"----------------",第二行"airplane land"
  • 无返回值 fly(),打印输出第一行"----------------",第二行"airplane fly"
class Airplane implements Flyer           运用了implements关键字 实现了接口继承
{
public void takeOff()            实现了接口方法 添加了方法体
{
System.out.println("------------");    输出语句
System.out.println("airplane takeOff");
      ..
      ..
}

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

  • 声明整型变量x,
  • 构造方法实现以下功能,为x赋值为4,打印输出"in superClass : x = [x的值]"
  • 定义方法aMethod(),打印输出"in superClass.aMethod()"
class SuperClass                   定义类 关键字为class
{
public int x;                     
public SuperClass()                     定义构造方法 构造方法与类名要相同 
{
x=4;
System.out.println("in superClass:x="+x);
}
public void aMethod()                    定义普通方法 注意有没有返回值  如果没有用void如果有要表明返回值类型 如:int,double等等
{
System.out.println("in 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的值

 

class SubClass1 extends SuperClass              继承主要关键字extends
{
public int x;
public SubClass1()                   定义构造方法 构造方法与类名要相同
{
x=6;
System.out.println("in subClass:x="+x);
}
public void aMethod()                 定义普通方法 没有返回值
{
super.aMethod();
System.out.println("super.x="+super.x+"sub.x="+x);
}
public int aMethod(int a,int b)           定义普通方法 有返回值 用到return 在调用时给值
{
int s=a+b;
return s;
}
}

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

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

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

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

 

class SubClass3                         定义类
{
public void aMethod()                 定义方法
{
System.out.println("in SubClass3.aMethod()");
}
public int aMethod(int a ,int 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方法;

 

public class Main                           定义类
{
public static void chooseClass(SubClass2 sub2)       定义静态方法 用static
{
 
}
public static void chooseClass(SubClass3 sub3)
{
 
}
public static void main (String args[])               程序的入口方法实现
{
int x=7;
Airplane airplane=new Airplane();              为类创建对象 类名 对象名=new类名()
airplane.takeOff();                      调用类的方法 对象名.方法名
SubClass1 sub1=new SubClass1();
sub1.aMethod();
int a =sub1.aMethod(x,x);                   因为有返回值所以要定义一个a来接受这个返回值
System.out.println(a);
airplane.fly();
SubClass2 sub2=new SubClass2();
SubClass3 sub3=new 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();
}
}
 
 
技术分享图片

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

第二次作业

标签:http   文件   pad   定义类   c11   静态方法   构造   入口   string   

原文地址:http://www.cnblogs.com/X0205/p/7853258.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!