当前位置: 首页 > news >正文

申请个人网站建设seo排名优化培训价格

申请个人网站建设,seo排名优化培训价格,四核网站建设,建设教育协会官网重点#xff1a;  1#xff0e;在编写程序时#xff0c;要正确地使用捕获例外和声明抛出异常的两种例外处理的方法。2#xff0e;遇到实际问题时#xff0c;要根据需要正确使用各种输入#xff0f;输出流#xff0c;特别是对中文使用适当的字符输入流。3#xff0e;正…重点  1在编写程序时要正确地使用捕获例外和声明抛出异常的两种例外处理的方法。2遇到实际问题时要根据需要正确使用各种输入输出流特别是对中文使用适当的字符输入流。3正确使用对象串行化的方法。难点1如何使用Java中两种异常处理机制抛弃异常和声明抛弃异常的区别与联系。2处理字符流时其构造方法的参数是一个字节流。3对象串行化的概念。(一)处理异常有的异常在编译(输入命令行)时出现而有的异常是在运行时出现。异常处理机制捕获异常(try-catch-finally)-积极机制、抛出异常(throw)-消极机制异常类的层次Throwable类中的Error、Exception类Error类LinkageError 动态链接失败、VirtualMachineError 虚拟机错误、AWTErrorException类RuntimeException运行时异常(算术异常除0错、数组下标越界等)、IOExcetpion(非运行时异常)、AWTError。。。运行时的异常Java编译器允许程序员不做处理而非运行时的异常Java编译器要求程序员必须进行捕获或抛出异常的处理1.try-catch-finally语句:try{......}catch( ExceptionName1 e){......} //ExceptionName1异常子类catch( ExceptionName2 e){......} //ExceptionName2异常父类finally{......}【注意】catch语句的顺序捕获例外的顺序和catch语句的顺序有关当捕获到一个异常时剩下的catch语句就不再进行匹配。因此在安排catch语句的顺序时首先应该捕获最特殊的异常然后再逐渐一般化。也就是一般先安排子类再安排父类。通过finally语句为异常处理提供一个统一的出口不论在try代码块中是否发生了异常事件finally块中的语句都会被执行。2.throws声明语句如果在一个方法中生成了一个异常但是这一方法并不确切地知道该如何对这一异常事件进行处理这时一个方法就应该声明抛弃异常使得异常对象可以从调用栈向后传播直到有合适的方法捕获它为止。public int read () throws IOException{......}注意throws子句中同时可以指明多个异常之间由逗号隔开。例如public static void main(Stringargs[]) throwsIOException,IndexOutOfBoundsException {…}3.throws语句IOException enewIOException();throwe ; //注意此处抛出的对象必须是异常实例不可抛出其他。(二)自定义异常类的使用自定义异常类必须是Throwable的直接或间接子类。【注意】一个方法所声明抛出的异常是作为这个方法与外界交互的一部分而存在的。所以方法的调用者必须了解这些异常并确定如何正确的处理他们。(三)I/O流概述I/0流输入/输出处理源(stream)比如从键盘读取数据、从文件中读取数据或向文件中写数据等等。Jdk提供了包java.io其中包括一系列的类来实现输入/输出处理。1字节流(byte)从InputStream和OutputStream派生出来的一系列类。◇ InputStream、OutputStream◇ FileInputStream、FileOutputStream◇ PipedInputStream、PipedOutputStream◇ ByteArrayInputStream、ByteArrayOutputStream◇ FilterInputStream、FilterOutputStream◇ DataInputStream、DataOutputStream◇ BufferedInputStream、BufferedOutputStream2字符流(以16位的Unicode码表示的字符)从Reader和Writer派生出的一系列类◇ Reader、Writer◇ InputStreamReader、OutputStreamWriter◇ FileReader、FileWriter◇ CharArrayReader、CharArrayWriter◇ PipedReader、PipedWriter◇ FilterReader、FilterWriter◇ BufferedReader、BufferedWriter◇ StringReader、StringWriter3对象流◇ ObjectInputStream、ObjectOutputStream4其它◇ 文件处理File、RandomAccessFile◇ 接口DataInput、DataOutput、ObjectInput、ObjectOutputInputStream◇ 从流中读取数据int read(); //读取一个字节返回值为所读的字节  intread( byte b[ ] ); //读取多个字节放置到字节数组b中通常读取的字节数量为b的长度//返回值为实际读取的字节的数量int read( byte b[ ], int off, int len); //读取len个字节放置到以下标off开始字节数组b中//返回值为实际读取的字节的数量int available( );   //返回值为流中尚未读取的字节的数量long skip( long n ) //读指针跳过n个字节不读返回值为实际跳过的字节数量◇ 关闭流close( ); //流操作完毕后必须关闭◇ 使用输入流中的标记void mark( int readlimit ); //记录当前读指针所在位置读指针读出readlimit个字节后所标记的指针位置失效void reset( ); //把读指针重新指向用mark方法所记录的位置boolean markSupported( ); //当前的流是否支持读指针的记录功能有关每个方法的使用详见javaAPI。OutputStream◇ 输出数据void write( int b );   //往流中写一个字节bvoid write( byte b[ ] ); //往流中写一个字节数组bvoid write( byte b[ ], int off, int len); //字节数组b中从下标off开始长度len的字节写入流◇ flush( );  //刷空输出流并输出所有被缓存的字节由于某些流支持缓存功能该方法将把缓存中所有内容强制输出到流中。◇ 关闭流close( ); //流操作完毕后必须关闭5.I/O中的异常进行I/O操作时可能会产生I/O异常属于非运行时例外应该在程序中处理。如FileNotFoundException,EOFException, IOException(四)文件处理java.io包中有关文件处理的类有File、FileInputStream、FileOutputStream、RamdomAccessFile和FileDescriptor接口有FilenameFilter。文件类(File)◇ 文件或目录的生成public File(String path)public File(String path,String name)//path是路径名name是文件名public File(File dir,String name)//dir是路径名name是文件名◇文件名的处理String getName( ) //得到一个文件的名称(不包括路径)String getPath( ) //得到一个文件的路径名String getAbsolutePath( )//得到一个文件的绝对路径名String getParent( ) //得到一个文件的上一级目录名String renameTo(File newName); //将当前文件名更名为给定文件的完整路径(移动、复制粘贴)◇文件属性测试boolean exists( ) //测试当前File对象所指示的文件是否存在boolean canWrite( )//测试当前文件是否可写boolean canRead( )//测试当前文件是否可读boolean isFile( ) //测试当前文件是否是文件(不是目录)boolean isDirectory( ) //测试当前文件是否是目录(不是文件)◇普通文件信息和工具long lastModified( );//得到文件最近一次修改的时间long length( ); //得到文件的长度以字节为单位boolean delete( ); //是否删除当前文件◇目录操作boolean mkdir( ); //根据当前对象生成一个由该对象指定的路径String list( ); //列出当前目录下的文件下面给出一个文件操作的实例列出目录D:\\ex\所有的.java文件importjava.io.*; //引入java.io包中所有的类public class FileFilterTest{public static void main(String args[]){File dirnew File(d://ex); //用File对象表示一个目录Filter filternew Filter(java); //生成一个名为java的过滤器System.out.println(list java files in directory dir);String files[]dir.list(filter); //列出目录dir下文件后缀名为java的所有文件for(int i0;iFile fnew File(dir,files[i]); //为目录dir下的文件或目录创建一个File对象if(f.isFile()) //如果该对象为后缀为java的文件则打印文件名System.out.println(file f);elseSystem.out.println(sub directory f); //如果是目录则打印目录名}}}class Filter implements FilenameFilter{String extent;Filter(String extent){this.extentextent;}public boolean accept(File dir,String name){returnname.endsWith(.extent); //返回文件的后缀名}}【文件顺序处理】类FileInputStream和FileOutputStream用来进行文件I/O处理由它们所提供的方法可以打开本地主机上的文件并进行顺序的读/写。例如下列的语句段是顺序读取文件名为text的文件里的内容并显示在控制台上面直到文件结束为止FileInputStreamfis;try{ fis new FileInputStream( text );System.out.print( content of text is : );int b;while( (bfis.read())!-1 ) //顺序读取文件text里的内容并赋值给整型变量b,直到文件结束     {System.out.print( (char)b );}}catch( FileNotFoundException e ){System.out.println( e );}catch( IOException e ){System.out.println( e );}【随机访问文件】在java中类RandomAccessFile提供了随机访问文件的方法。类RandomAccessFile的声明为public class RandomAccessFile extends Objectimplements DataInput,DataOutput接口DataInput中定义的方法readBoolean()、readInt( )、readLine( )、readFully( )等接口DataOutput中定义的方法writeChar()、writeDouble( )、write( )等类RandomAccessFile的方法◇ 构造方法  RandomAccessFile(String name,Stringmode); //name文件名mode打开方式(r只读rw读写)RandomAccessFile(File file,Stringmode); //file是文件对象◇ 文件指针的操作long getFilePointer( ); //用于得到当前的文件指针void seek( long pos ); //用于移动文件指针到指定的位置int skipBytes( int n ); //使文件指针向前移动指定的n个字节(五)过滤流过滤流在读/写数据的同时可以对数据进行处理它提供了同步机制使得某一时刻只有一个线程可以访问一个I/O流以防止多个线程同时对一个I/O流进行操作所带来的意想不到的结果。类FilterInputStream和FilterOutputStream分别作为所有过滤输入流和输出流的父类。为了使用一个过滤流必须首先把过滤流连接到某个输入/出流上通常通过在构造方法的参数中指定所要连接的输入/出流来实现。例如FilterInputStream( InputStream in );FilterOutputStream( OutputStream out );常见的过滤流◇BufferedInputStream和BufferedOutputStream 缓冲流用于提高输入/输出处理的效率◇ DataInputStream 和DataOutputStream 不仅能读/写数据流而且能读/写数据基本类型。◇LineNumberInputStream 除了提供对输入处理的支持外还可以记录当前的行号。◇PushbackInputStream 提供方法可以把刚读过的字节退回到输入流中以便重新再读一遍。◇PrintStream 打印流把Java语言的内构类型以其字符表示形式送到相应的输出流。(六)字符流的处理java中提供了处理以16位的Unicode码表示的字符流的类即以Reader和Writer为基类派生出的一系列类。1.Reader和WriterReader类是处理所有字符流输入类的父类、Writer类是处理所有字符流输出类的父类。◇ 读取字符(输入流)public int read() throws IOException; //读取一个字符返回值为读取的字符public int read(char cbuf[]) throws IOException;//读取一系列字符到数组cbuf[]中public abstract int read(char cbuf[],int off,int len) throwsIOException; //必须由子类实现◇写入字符(输出流)public void write(int c) throws IOExceptionpublic void write(char cbuf[]) throws IOExceptionpublic abstract void write(char cbuf[],int off,int len) throwsIOExceptionpublic void write(String str) throws IOExceptionpublic void write(String str,int off,int len) throwsIOException◇ flush(输出流)刷空输出流并输出(写入)所有被缓存的字节。◇ 标记流(输入流)public boolean markSupported();publicvoid mark(int readAheadLimit) throws IOException;publicvoid reset() throws IOException;◇ 关闭流(输入输出流)public abstract void close() throws IOException;2.InputStreamReader 和OutputStreamWriter字节流和字符流的中介流◇生成流对象  public InputStreamReader(InputStreamin); //InputStreamReader可以把字节流in转换成字符流public InputStreamReader(InputStream in,String enc) throwsUnsupportedEncodingException;public OutputStreamWriter(OutputStream out);public OutputStreamWriter(OutputStream out,String enc) throwsUnsupportedEncodingException;◇ 读入和写出字符基本同Reader和Writer。◇ 获取当前编码方式public String getEncoding();◇ 关闭流public void close() throws IOException;3.BufferedReader和 BufferedWriter◇生成流对象public BufferedReader(Reader in); //使用缺省的缓冲区大小public BufferedReader(Reader in, intsz); //sz为缓冲区的大小public BufferedWriter(Writer out);public BufferedWriter(Writer out, int sz);◇读入/写出字符除了Reader和Writer中提供的基本的读写方法外增加对整行字符的处理  public String readLine() throwsIOException; //读一行字符public void newLine() throwsIOException; //写一行字符【例子】从键盘接收数据输入importjava.io.*;public class NumberInput{public static void main(String args[]){try{ InputStreamReaderir;BufferedReader in;irnewInputStreamReader(System.in); //从键盘接收了一个字符串的输入并创建了一个字符输入流的对象innew BufferedReader(ir);String sin.readLine();//从输入流in中读入一行并将读取的值赋值给字符串变量sSystem.out.println(Input value is: s);inti Integer.parseInt(s);//转换成int型i*2;System.out.println(Input value changed after doubled:i);}catch(IOException e){System.out.println(e);}}}【注意】在读取字符流时如果不是来自于本地的比如说来自于网络上某处的与本地编码方式不同的机器那么我们在构造输入流时就不能简单地使用本地缺省的编码方式否则读出的字符就不正确为了正确地读出异种机上的字符我们应该使用下述方式构造输入流对象ir newInputStreamReader(is, 8859_1);采用ISO8859_1编码方式这是一种映射到ASCII码的编码方式可以在不同平台之间正确转换字符。(七)对象的串行化(Serialization)我们把对象的这种能记录自己的状态以便将来再生的能力叫做对象的持续性(persistence)。对象通过写出描述自己状态的数值来记录自己这个过程叫对象的串行化(Serialization)。串行化目的为java的运行环境提供一组特性其主要任务是写出对象实例变量的数值。串行化方法在java.io包中只有实现了Serializable类的对象才可以被串行化。串行化只能保存的元素非静态成员变量的值不能保存变量任何修饰符。transient关键字暂时保存的对象首先定义一个可串行化对象public class Student implementsSerializable{int id; //学号String name; //姓名int age; //年龄String department //系别public Student(int id,String name,int age,Stringdepartment){this.id id;this.name name;this.age age;this.department department;}}其次构造对象输入输出流在ObjectInputStream中用readObject()方法直接读取一个对象ObjectOutputStream中用writeObject()方法直接将对象保存到输出流中Studentstunew Student(981036,Liu Ming,18, CSD);FileOutputStream fonew FileOutputStream(data.ser);//保存对象的状态ObjectOutputStream sonew ObjectOutputStream(fo);try{so.writeObject(stu);so.close();}catch(IOException e ){System.out.println(e);}FileInputStream finew FileInputStream(data.ser);ObjectInputStream sinew ObjectInputStream(fi);//恢复对象的状态try{stu(Student)si.readObject();si.close();}catch(IOException e ){System.out.println(e);}在这个例子中我们首先定义一个类Student实现了Serializable接口然后通过对象输出流的writeObject()方法将Student对象保存到文件data.ser中。之后通过对象输入流的readObject()方法从文件data.ser中读出保存下来的Student对象。(八)其他常用流1.管道流PipedInputStream、PipedOutputStream管道输入流作为一个通信管道的接收端管道输出流作为发送端。在使用管道之前管道输出流和管道输入流必须进行连接。下面有两种连接的方法构造方法中连接  PipedInputStream(PipedOutputStream src);PipedOutputStream(PipedInputStream snk);connect()方法进行连接类PipedInputStream中定义为void connect(PipedOutputStream src);类PipedOutputStream中定义为void connect(PipedInputStream snk);2.内存的读/写ByteArrayInputStream和ByteArrayOutputStream 字节数组读取写入字节数据StringBufferInputStream和StringBufferOutputStream字符串缓冲区中写入读取写入字符数据3.顺序输入流SequenceInputStream把几个输入流顺序连接起来。顺序输入流提供了把若干不同的流统一为同一个流的功能使得程序变得更加简洁。
http://www.huolong8.cn/news/20688/

相关文章:

  • 网络公司有哪些职位网站模板对seo的影响
  • 端州网站建设大连网站建设收费
  • 开发网站公司价格湖南省金力电力建设有限公司 网站
  • 用手机搭建自己的网站西安网站开发高端网站开发
  • 网站模板怎么设计网站备案完电信
  • 湖北皇奥建设工程有限公司网站泰安网络犯罪案件
  • 仙桃网站设计公司辽宁建设工程招标信息网官网
  • 2021年新闻大事件什么样的网站好优化
  • 亚马逊网站建设评述杭州公司注销流程及费用
  • 正规建网站企业建设厅网站举报
  • 死链对网站的影响巨量算数数据分析
  • 广告 网站举例创新的模板网站建设
  • 婚庆公司网站模板下载建设专业网站
  • 贸易公司做网站有优势吗大数据开发过程
  • 建立网站需要做什么微信开发小程序工具
  • 做国外百科知识网站做网站赚钱 知乎
  • 深圳网站建设 东莞网站建设网络工程师题库
  • 建网站流程seo网站推广专员
  • 系部 网站建设方案如何建一个外贸网站
  • 低价格制作网站沈阳seo关键词排名
  • 域名备案要先做网站的吗合肥建站网站
  • 建网站需要多少钱和什么条件赣州酒店网站设计
  • 做学校和企业对接的网站无法访问网站
  • 如何在招聘网站上选个好公司做销售上海建设安全生产协会网站
  • 嘉祥县建设局网站百度云盘做网站
  • 房地产景区网站建设方案优秀购物网站建设
  • 做网站英文编辑有前途网络设计方案书主要包括哪些内容
  • wordpress用外部图片浙江企业seo推广
  • c2c网站有哪些网站建设与开发学什么内容呢
  • 佛山网站建设网络推广做关于植物的网站