千锋逆战班学习日志


千锋逆战班学习第27天
努力或许没有收获,但不努力一定没收获,加油。
今天我学了Java课程的异常。
中国加油!!!武汉加油!!!千锋加油!!!我自己加油!!!

总结-异常

七、自定义异常

  • 需继承自Exception或Exception的子类,常用RuntimeException。
  • 必要提供的构造方法:
  • 无参数构造方法
  • String message参数的构造方法

八、方法覆盖

  • 带有异常声明的方法覆盖:
    • 方法名、参数列表、返回值类型必须和父类相同。
    • 父类中声明了异常,子类重写后可声明也可不声明。
    • 父类中声明了异常,子类重写可声明的异常与其相等或是其子类。
    • 父类中方法没有声明异常,则子类也不可以声明异常。
    • 父类中声明了异常,子类可声明比父类更多异常,必须小于其父类声明的异常。

九、扩充:方法执行中字节码操作指令

I. 反编译:javap -verbose 文件名称(是.class) > 自定义文件名称.bytecode

Question_11_5and6

5.(自定义异常)创建两个自定义异常类 MyException1 和 MyException2。要求:
I. MyException1 为已检查异常,MyException2 为运行时异常。
AI.这两个异常均具有两个构造函数,一个无参,另一个带字符串参数,参数表示产生异常的信息。
6.(自定义异常)在上一题的基础上,把下面代码补充完整。

public class TestMyException{
	public static void main(String args[]){ 
		int n;
		//读入 n 
		try{
			m(n); 
		}catch(MyException1 ex1){
			//输出 ex1 详细的方法调用栈信息 
		}catch(MyException2 ex2){
			//输出 ex2 的详细信息
			//并把 ex2 重新抛出
		}
	}
	public static void m(int n)_________ { //声明抛出 MyException1 
		if (n == 1) {
			//抛出 MyException1
			//并设定其详细信息为“n == 1”
		}else {
			//抛出 MyException2
			//并设定其详细信息为“n == 2”
		}
	}
}

补充后

public class TestMyException {
	public static void main(String args[]){ 
		int n = 2;
		//读入n 
		try {
			m(n);
		}catch(MyException1 ex1){
			//输出 ex1 详细的方法调用栈信息 
			ex1.printStackTrace();
		}catch(MyException2 ex2){
			//输出 ex2 的详细信息
			System.out.println(ex2.getMessage());
			//并把 ex2 重新抛出
			throw ex2;
		}
	}
	public static void m(int n) throws MyException1{ //声明抛出 MyException1 
		if (n == 1) {
			//抛出 MyException1
			//并设定其详细信息为“n == 1”
			throw new MyException1("n == 1");
		}else {
			//抛出 MyException2
			//并设定其详细信息为“n == 2”
			throw new MyException2("n == 2");
		}
	}
}
class MyException1 extends Exception{
	public  MyException1() {}
	public  MyException1(String message) {
		super(message);
	}
}

class MyException2 extends RuntimeException{
	public  MyException2() {}
	public  MyException2(String message) {
		super(message);
	}
}

Question_11_8

在这里插入图片描述
//1 AB
//2 D

Question_11_10

有以下代码

public class TestFinally {
	public static void main(String args[]){ 
		System.out.println ( ma() );
	}
	public static int ma(){
		int b;
		//读入 b
		try{
			int n = 100;
			return n/b;
		}catch(Exception e){
			return 10;
		}finally{
			return 100;
		}
	}
}

在 ma 中,当读入的 b 为 100 时,输出结果为———,当读入的 b 为 0 时,输出结果为______。

100;100

Question_11_12

import java.io.*; 
class MySuper{
	public void m() throws IOException{}
}
class MySub extends MySuper{
	public void m() throws EOFException{}
}
class MySub2 extends MySub {
	public void m() throws FileNotFoundException{}
}

以上代码是否能编译通过?如果不能,应该如何修改?
不能,删除MySub2的m()的“ throws FileNotFoundException”,或者MySub的m()的“throws EOFException”变为“throws EOFException,FileNotFoundException”
如有错误,请多包涵。

数据中心机房是现代信息技术的核心设施,它承载着企业的重要数据和服务,因此,其基础设计与规划至关重要。在制定这样的方案,需要考虑的因素繁多,包括但不限于以下几点: 1. **容量规划**:必须根据业务需求预测未来几年的数据处理和存储需求,合理规划机房的规模和设备容量。这涉及到服务器的数量、存储设备的容量以及网络带宽的需求等。 2. **电力供应**:数据中心是能源消耗大户,因此电力供应设计是关键。要考虑不间断电源(UPS)、备用发电机的容量,以及高效节能的电力分配系统,确保电力的稳定供应并降低能耗。 3. **冷却系统**:由于设备密集运行,散热问题不容忽视。合理的空调布局和冷却系统设计可以有效控制机房温度,避免设备过热引发故障。 4. **物理安全**:包括防火、防盗、防震、防潮等措施。需要设计防火分区、安装烟雾探测和自动灭火系统,设置访问控制系统,确保只有授权人员能进入。 5. **网络架构**:规划高速、稳定、冗余的网络架构,考虑使用光纤、以太网等技术,构建层次化网络,保证数据传输的高效性和安全性。 6. **运维管理**:设计易于管理和维护的IT基础设施,例如模块化设计便于扩展,集中监控系统可以实查看设备状态,及发现并解决问题。 7. **绿色数据中心**:随着环保意识的提升,绿色数据中心成为趋势。采用节能设备,利用自然冷源,以及优化能源管理策略,实现低能耗和低碳排放。 8. **灾难恢复**:考虑备份和恢复策略,建立异地灾备中心,确保在主数据中心发生故障,业务能够快速恢复。 9. **法规遵从**:需遵循国家和地区的相关法律法规,如信息安全、数据保护和环境保护等,确保数据中心的合法运营。 10. **扩展性**:设计应考虑到未来的业务发展和技术进步,保证机房有充足的扩展空间和升级能力。 技术创新在数据中心机房基础设计及规划方案中扮演了重要角色。例如,采用虚拟化技术可以提高硬件资源利用率,软件定义网络(SDN)提供更灵活的网络管理,人工智能和机器学习则有助于优化能源管理和故障预测。 总结来说,一个完整且高效的数据中心机房设计及规划方案,不仅需要满足当前的技术需求和业务目标,还需要具备前瞻性和可持续性,以适应快速变化的IT环境和未来可能的技术革新。同,也要注重经济效益,平衡投资成本与长期运营成本,实现数据中心的高效、安全和绿色运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值