A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© kjkjkjh 中级黑马   /  2015-12-14 23:35  /  1188 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

INT []ARR=[11,22,3,3,445,5};
ARR=NULL;
SYSO(ARR[0]);
异常报错
异常;老大
throwbale
1 Exception
run time Exception  运行时异常 及其子类
  
2 Error
这里一般是硬件问题  
数据库崩溃,服务器宕机

异常的处理方式
a;自己处理。然后继续
b;如果main 函数没有对该类异常的处理方式该main函数
就交给jvm,jvm内部有异常处理机制。。会把异常信息
显示在控制台

try...catch
try用来显示异常的
catch补货异常的
finally 释放资源的
三种搭配
trycatch 同过。程序 继续执行
格式
//处理一个异常的方式
try {
可能出现的问题
}
catch () {
出现问题时的代码
}finally{
  一般用来释放资源的
}
第二种处理方式
throwable
try {
syso(1/0)
}
catch (e.exception) {  exception e=new arithmeticExceptio
syso(e.getmessage) 获取异常
syso(e.tostring)
syso(e)此时也调用to string方法打印 异常类名和异常信息
e.printStractTrace();
}
开发中一般调用printstack方法
printStrackTrace();获取异常因袭。返回字符串
tostring()
getmessage()
class person {
private string name ;
private int age;
}
if (age>0$$age<=150) {
else
  syso(回火星吧)
}
异常处理 throw是异常抛出
区别编译时异常的抛出  必须对其进行处理
运行时异常的抛出可以处理也可以不处理
throws  定义方法的时候直接throw是
写在方法声明上 如果方法内部抛出的是 一个运行是一场
方法上可以不处理 如果方法内部抛出是一个编译旗
方法上必须处理

面试题throw
         定义在方法的内部,只能 跟一个
     有方法体内处理
      throws
   定义在方法的声明上 异常类型
   跟的是
      可以同时跟多个异常类型
finally特点
面试题
   第二个fianl,finally,finalized
fianlly 一定会执行10/0
把整个方法相当于 一个人
      return语句相当于方法的最后一口气
   死之前看有没有finally ,有就让他先执行
   在自己死翘翘。
   是try语句的语句体 不能单独使用 释放资源
finalied 垃圾回收机制的方法 是一个方法

fianl修饰的类不能被继承 方法不能被重写,变量变成常量
  demo d=new demo();
  syso(dmeo)
class dmeo  {
int s=10
  try {
   s=20;
   syso(1/0)
    return s;
  }
   catch (exception e) {
   s=30;
              return s;建立好返回路径了 装入箱子了所以还是三十
  }fianlly
   s=40;
}
千万不要fianglly 里面写返回语句 因为他的作用实施方资源呢
一定会 执行的 如果写try,catch 结果都会改变
第三题
catch 中有return  fianlly 中代码会不会执行 会的话
在之前,还是在他之后 答案是在之前,
小的异常类型放前边,大的放在前边,

自定义异常
目的是容易排错,所以针对自定义异常。区分名字而已
class ageoutofboundsException extends exception {
}
throw new ageoutofboundException("年龄非法")
自定义异常;
其实h就是我们自己写一个类
继承exception和runtimeexception

注意;
再有方法重写的前提
a子类不能出现父类没有的异常
b如果 父类没有异常抛出,如果子类有异常的化只能try

俩种异常处理方式
try.catch 处理后程序可以继续执行
throws 抛出异常后,成序终止运行
开发原则
能try 则try  try 不了就跑
如果jDk 没有提供该异常 我们就要用到字顶义异常
键盘录入求二进制、
integer (tobinary string)
第一步  分析创建键盘录入对象
第二部  将键盘录入的结果存储子啊string 类型的字符串中  存储int类型中不符合条件的直接报错
第三部 键盘录入的接过转换成int 类型的数据对还是错
第四部   对的直接转换换
第五部 错误的进行判断
scanner sc=new scanner(system,in);
syso("s还素如一个")
String  line =sc.nextline ();  存贮在line 中
while (true) {
}
try {
int num =integer.parseInt(line);将字符串转换为整数
syso(integer.tobinarystring(num));
break ;   //跳出循环
}
catch (Excdption e) {
syso("录入的整数过大");
}
file 方法
file 应该叫做路径
相对路径相对于某个位置
在dos 代表当前路径
文件和文件夹路径
相对和绝对路径   绝对路径从盘符开始
io inner out //文件和路径的抽象表现形式
...................................................................

file类
绝对路径
固定路径,盘符开否

相对路径
相对于某个地方来说,相对于eclipse 的项目来说的

构造方法
File(String pathname)根据路径得到file对象
File(String parent,string child )根据一个目录和一个子文件/子目录得到file对象
File(File parent,string child) 根据一个父file对象和一个子文件/子目录得到file对象

成员方法
public boolean creatnewFile(){}创建文件,如果存在这样的文件就不创建了
public boolean mkdir()//创建文件夹 父目录存在 就不创建
public boolean mkdirS()//创建多级目录文件夹,父类文件夹不存在,会帮你创建出来
在指定盘符
重命名和删除功能
renameTo(file name)
如果路经一样就改名 不一样就是改名 就剪切
delete ()删除文件或文件加
  要删除的文件必须是了、空文件
六个类型
判断是否是文件夹
isdieectory()
是否是文件 isfile
s是否存在 exists
是否可读  canread
是否可写  canwrite
是否隐藏  ishidden
windows操作系统认为所有的文件都是可读的
但是可以设置可写
。。。。。。。。。。。。。。。。。。。。。。。。。。。。

get absolute path()获取绝对路径
getpath() 获取路径 相对
getName()获取名称
length()获取长度,字节数
lastModified获取最后一次修改时间
public string【】 list()获取指定 获取指定目录所有文件或文件名称数组
public file【】 listfiles()获取指定 获取指定目录所有文件或文件file(对象)数组
endswith判断字符串是以那个字符串结尾的

文件名称过滤器
1 String[] list(filenameFilter filter);
匿名内部类 ?
String[] arr=dir.lit(new filenameFilter())
                    这里是匿名内部类

2 file[] listfiles(filefileter fileter) 过滤器

1 满足某些指定目录下 满足条件的文件或者文件夹的名称数组
2 满足某些指定目录下 满足条件的文件或者文件夹的对象file数组

评分

参与人数 1黑马币 +3 收起 理由
Hansion + 3 很给力!

查看全部评分

5 个回复

倒序浏览
楼主加油!!!!
回复 使用道具 举报
为了黑马币拼了
回复 使用道具 举报
顶一个~!~!
回复 使用道具 举报
马上就要学IO流了 感谢分享
回复 使用道具 举报
总结的挺好
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马