浅谈异常的原理

一、异常(Exception)
    异常不是错误,什么是异常:是在运行过程中代码序列中产生的一种例外情况。
    Java异常处理的五个关键字:try、catch、throw、throws、finally。
    try...catch...finally...:
        讲个故事:从前有一个人举报张三要去偷银行,于是呢,警察就出警了,就蹲在银行等着张三出现,蹲了一晚上张三没有出现,警察草草收场,收场之后呢,需要写出警报告。第二天呢,警察又接到电话,说张三今天肯定去,那警察呢,肯定出警啊,于是又出警了,蹲在银行门口,过了一会张三去了,带着面罩进了银行,警察一看,这不能看着他抢吧,就进去抓捕。然后,张三就被抓捕了,回去后警察还要写出警报告。
        这里的try{语句块}就相当于警察蹲的点,那张三就相当异常,张三出现没出现都要写出警报告,就相当于finally{语句块}不管异常有没有被捕获都会执行finally语句块,第二天张三出现了,警察抓捕了张三,就相当于catch{语句块}。
        try...catch...和if...else...相似可以嵌套
        throw关键字一般都是程序员自己定义的异常,创建异常对象抛出,必须搭配try...catch...finally...使用,而throws是自动抛出异常,就比如张三警察管不了,不想管了,上级去管吧,那上级就派出武警部队。如果一直抛出,那肯定要有一个部队来解决张三吧,所以最终派出了特种部队(Exception,是所有异常的老大)。
    一个故事讲清楚异常操作。

二、MySQL面试五道题
    1、数据库MySQL分页时用的语句:
        使用limit关键字。Select * from 表名 where 条件 limit 开始位置,结束位置。通过动态的改变开始和结束位置的值来实现分页。
    2、根据你以往的经验简单叙述一下MYSQL的优化
        1、尽可能使用更小的整数类型.(mediumint就比int更合适)。
        2、尽可能的定义字段为not null,除非这个字段需要null。
        3、如果想要清空表的所有记录,建议用truncate table tablename而不是delete from tablename。
        4、避免出现SELECT * FROM table 语句,要明确查出的字段。
        5、小心使用 IN 和 OR,需要注意In集合中的数据量。建议集合中的数据不超过200个。
    3、有两张表;请用SQL查询,所有的客户订单日期最新的前五条订单记录。
        客户信息表(c CUSTOM)有以下字段:id、name、mobile
        客户订单表(C_ORDER)有以下字段:id、custom_id、commodity、count、order _date 
            Select * from c_order order by order_date desc limit 0,5;
    4、数据库设计中,一对多如何处理?
        数据库外键关系表示的其实是一种一对多关系,所以处理一对多时可以使用外键。
    5、数据库设计中,多对多一般如何处理?
        引入中间表,把一个多对多表示为两个一对多。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值