【安博培训笔记】Java 基础_下课作业2_20130920

1.设计一个图形接口,包括draw,erase两个方法

package com.ambow.java.Test2;

public interface T1Graphic {
	void draw();
	void erase();

}


2.设计一个圆,三角形,直线三种子图形,让其实现图形接口

package com.ambow.java.Test2;

public class T2Cycle implements T1Graphic{
	@Override
	public void draw() {
		// TODO Auto-generated method stub
		System.out.println("drawCycle");
	}
	@Override
	public void erase() {
		// TODO Auto-generated method stub
		System.out.println("eraseCycle");
	}

}
package com.ambow.java.Test2;

public class T2Link implements T1Graphic{

	@Override
	public void draw() {
		// TODO Auto-generated method stub
		System.out.println("drawLink");
	}

	@Override
	public void erase() {
		// TODO Auto-generated method stub
		System.out.println("eraseLink");
	}

}

package com.ambow.java.Test2;

public class T2Triangle implements T1Graphic{

	@Override
	public void draw() {
		// TODO Auto-generated method stub
		System.out.println("drawTriangle");
	}

	@Override
	public void erase() {
		// TODO Auto-generated method stub
		System.out.println("eraseTriangle");
	}
	

}



3.设计一个鼠标类,包含两个方法,一个是drawGraphic,

让其能接收任何一种图形,并完成画的行为;

另一个是eraseGraphic,让其能接收任何一种图形,并完成擦除的行为

package com.ambow.java.Test2;

public class T3Mouse {
	public void drawGraphic(T1Graphic graphic) {
		graphic.draw();
	}
	public void eraseGraphic(T1Graphic graphic) {
		graphic.erase();
	}
	

}


4.测试,用鼠标画一个图形,并擦拭。
package com.ambow.java.Test2;


public class T4GraphicTest {
public static void main(String[] args) {
T3Mouse mouse = new T3Mouse();

T2Cycle cycle = new T2Cycle();
mouse.drawGraphic(cycle);
mouse.eraseGraphic(cycle);

T2Link link = new T2Link();
mouse.drawGraphic(link);
mouse.eraseGraphic(link);

T2Triangle triangle = new T2Triangle();
mouse.drawGraphic(triangle);
mouse.eraseGraphic(triangle);
}


}



5.Public class Class1{
   Public static void main(String[] args){
      Try{
         Int a[]={1,2,3};
         System.out.println(“AAA”);
         a[3]=5;
System.out.println(“BBB”);
}
Catch(ArithemeticException e){
System.out.println(“处理算术异常的catch块捕获了异常”);
System.out.println(“捕获的异常类型是”+e);


}
finally{
 System.out.println(“异常处理完毕”);
System.out.println(“CCC”);
}
}
}


写出结果

package com.ambow.java.Test2;

public class T5 {
	public static void main(String[] args){
	      try{
	         int a[]={1,2,3};
	         System.out.println("AAA");
	         a[3]=5;
	System.out.println("BBB");
	}
	catch(Exception e){
	System.out.println("处理算术异常的catch块捕获了异常");
	System.out.println("捕获的异常类型是"+e);

	}
	finally{
	 System.out.println("异常处理完毕");
	System.out.println("CCC");
	}
}
}

//AAA
//处理算术异常的catch块捕获了异常
//捕获的异常类型是java.lang.ArrayIndexOutOfBoundsException: 3
//异常处理完毕
//CCC

6.从命令行接收一个数据,设法计算其阶乘的值. 要求使用异常处理以下情况:

当前数字不能是负数
必须从命令行接收一个参数
package com.ambow.java.Test2;

import java.util.Scanner;

/**
 * 自定义异常
 * @author Administrator
 *6.从命令行接收一个数据,设法计算其阶乘的值. 要求使用异常处理以下情况:
 *当前数字不能是负数
 *必须从命令行接收一个参数
 */
public class T6 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("计算阶乘的值,请输入一个数:");

		try {
			int num = sc.nextInt();
			System.out.println(num);
			fun(num);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public static void fun(int num) throws Exception {
		if (num < 0) {
			throw new Exception("当前数字不能为负数!");
		}
		int sum = 1;
		System.out.print(num + "! = ");
		for (int i = 1; i <= num; i++) {
			sum = sum * i;
		}
		System.out.println(sum);
	}

}




























  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值