初级java教程17_22

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

this、super●This—在类中使用this主要是调用本类的属性和方法。(用于调用构造函数时,必须在方法中的第一位)●Super—调用父类中属性和方法(用于调用构造函数时,必须在方法中的第一位)静态的方法中无法使用非静态的变量处理方法:将非静态的变量放在非静态的方法中●在类的声明时,可以使用final来进行修饰,主要对类继承时的进行约束。——final标记的类不能被继承——final标记的方法不能被子类重写(单态模式)——使用final标记的变量就是常量,只能赋值一次。●instanceof(运算符)——用语比较对象是否属于类。例如:p1instanceofperson//p1为对象名,person为类名final、instanceof用==比较内存,用equals比较值抽象类●Java中可以定义一些没有方法体的函数,函数体的实现主要在继承后进行覆盖,这就是抽象方法,包含抽象方法的类就是抽象类。●使用abstract修饰抽象类和方法。只要有抽象方法的类必须为抽象类。没有{},就是没有方法体,有{},{}中没有内容,就是空方法体接口●接口是特殊的抽象类,在其中的方法全部都必须是抽象方法,这样的类就是接口。●使用interface修饰的类。接口的定义interface接口名接口中的变量必须有初始值implements来实现接口,代替extends对接口中的方法重写时,重写的方法必须是public方法Java中的包●它是一系列类和接口的集合◘由于java编译器为每个类生成一个字节码文件,且文件名与类名相同,因此同名的类有可能发生冲突。◘为了解决这一问题,java提供包来管理类名空间。因为一个包中的符号名如类名,接口名等不能重名;不同的包之间可以允许有同名的符号出现。—利用它可以实现将程序中的相关类和接口或子包组合在一起,达到分块只目的,从而形成一个独立的外编译单元。—一个包即为一个小类型库。Java中的包,其实就可以理解为文件夹包的定义●Package包名;如:—packagemyPackage;●Package语句作为java源文件的第一条语句,指明该文件中定义的类所在的包;若缺省该语句,则指定为无名包。包的引用●可以在一个包中使用另一个包中所定义的类和接口,这可由import语句来实现。—如引用包中的指定名称类:import包名.类名;—或引用包中的可用的类或接口:import包名.*;importjava.applet.*;importjava.awt.*;importjava.awt.event.*;publicclassButtonActionEventextendsAppletimplementsActionListener//实现接口{TextFieldtext=newTextField(“输入的文字”);}包的补充●包名称与目录之间的关系—package语句中,用.来指明目录的层次●特殊的包:java.lang由于它是所有的java程序都需要的包,提供java的核心服务,比如:Object、String、Thread类,这些类是经常使用到的,lang软件包包含了访问系统资源的类,如System、Runtime等。因而总是被java编译器自动引入到本程序所在的包中,故不必再采用import引入它。importjava.lang.*;//错误编程习惯:类的第一个字母大写,方法的第二个单词的第一个字母大写,常量的字母全部大写java.lang核心包java.io输入输出包java.util工具包java.net网络包java.awt抽象窗口工具包java.applet小程序包java.swing新图形界面库类的编程深入1、类的定义形式方式一:publicclass类名{//未指明父类名(缺省为Object类);}方式二:publicclass类名extends父类名{//继承与派生形式的类定义(并指明父类名);}方式三:publicclass类名extends父类名implements接口名{//继承与派生并实现某一接口形式的类定义;}2、类的类型的选项(1)public公有类(该类可以被本包中或其他包中类成员函数使用)(2)abstract抽象类(没有具体对象的概念类)(3)final定止类(或称为终极类。它不允许再被继承与派生)(4)缺省末指定(该类只能被其所在的包中所有的类使用)类的访问控制访问规则同一个类中同一个包中不同包中的子类不同包中的非子类(任意类)private♥default♥♥protected♥♥♥public♥♥♥♥public:任何其他类、对象只要可以看到这个类的话,那么它就可以存取变量的数据,或使用方法。protected:同一类,同一包可以使用。不同包的类要使用,必须是该类的子类。private:不允许任何其他类存取和调用。friendly(default,前边没有修饰字的情况):在同一程序包中出现的类才可以直接使用它的数据和方法。成员数据的定义(1)成员数据(属性)定义的一般格式【变量修饰字】变量数据类型变量名1,变量名2【=变量初值】……;【public|protected|private】【static】【final】变量修饰字(2)示例访问控制变量种类数据类型变量名;publicstaticintval;(3)成员数据的种类static静态变量final成员static静态关键字●静态变量—是类的变量,可以不必再创建对象时就可以访问它。●静态方法—是类的成员方法,可以在没有创建对象时使用类对它进行访问●静态代码块—程序中可以出现不包含在方法中的静态代码块,只要类载入就被招行,并且只运行一次,通常使用该特性进行类中属性的初始化。publicclassAbc{staticintx=3;staticinty=5;staticvoidsum(){intm;m=x+y;System.out.println(m);}static{inta=4,b=7,c;c=a+b;System.out.println(“a+b=”+c);}}classTest{publicstaticvoidmain(Stringargs[]){inta=10;intb=Abc.x+a;System.out.println(b);Abc.sum();}}静态程序块静态变量静态方法(函数)x、y必须是静态的(静态方法不能调用非静态变量)1、静态变量和静态函数不用被实例化,可以直接调用。2、在调用Abc类时,首先运行静态程序块,即是有构造函数,也是先运行程序块,然后再运行构造函数且只运行一次。程序运行结果:a+b=11138Object类●Object类是类体系结构的根。Java系统中的每个类都是Object类的直接或者间接的子类。此类定义了所有对象都具备的基本状态和行为。—equalsE.equals(F)对象E与对象F相比较;—toString类和对象的多态●多态就是类与对象的多种表示方式,但愿意是不会改变的,比如说水的多态形式就是冰、水和气。异常技术课程目标●异常的表现形式●try、catch和finally语句●异常的抛出●用户自定义异常异常(1)错误处理◘在进行程序设计时,错误的产生式不可避免的。这是任何程序设计语言都要解决的问题。◘如何处理错误?◘把错误交给谁去处理?◘程序又该如何从错误中恢复?(2)什么是异常◘程序在运行过程中所发生的错误事件(如数组越界、文件操作时未找到文件、除法溢出等)◘而这些错误在设计时不能准确地识别出但又可能发生或者不会发生。(3)正确理解程序设计中的三种错误—语法错误(编译时的错误);—逻辑错误(运行时的错误);—异常错误(运行时的错误但取决于执行环境)。(4)异常的特点(以“人身保险”为例加以说明异常的特性)—程序在运行过程中发生的错误事件—程序员在编程时物发放预知它是否会产生—产生与否取决于用户当时的执行环境异常结构●在java中所有的异常都是throwable的子类,它本身又派生于Object类。●throwable中又分为Error和Exception异常,Error用于运行时系统本身的错误,如读一个文件但硬盘的相应分区已经不存在等,这些不是程序可以控制的错误。●Exception可用于捕获异常,也可以创建异常。●只有throwable,Error,Exception或通过它们创建的类的实例,JVM才识别为异常异常处理机制(1)异常处理机制主要体现在“抛出异常”并“捕获异常”这两个层次。(2)抛出异常当程序执行过程中产生异常时,运行系统将抛出异常类对象(它代表某一异常类型的错误事件)。(3)捕获异常用户程序或运行系统可以捕获该异常类对象(在函数的调用栈中查找能处理此异常事件的程序为止)并相应地给出处理的方法(代码)。(4)如何捕获异常采用try、catch、finally语句块。异常的一般形式try{—监视可能有异常的代码}catch(Exception1ex1){—在try中引发的异常,在此处进行处理}catch(Exceptionex2){处理2}finally{—Try结束前执行的代码}常见异常●Exception—异常结构的根类●ArithmeticException—算术异常●ArraylndexOutOfBoundsException—数组下标超出异常●NullPointerException—访问null对象时●IOException—I/O异常

1 / 23
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功