标签: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