您好,欢迎访问三七文档
基础知识讲解及运用JAVA演讲人:XXX目录JAVA概述1、语言介绍2、语言特性3、环境介绍面向对象1、两大元素2、四大特性3、重载重写语言基础1、标识符、关键字、常变量2、基本数据类型3、String、StringBuffer4、对象生命周期5、运算符、控制语句010203目录接口和包1、接口和包2、抽象类3、final、static4、访问修饰符5、集合类04I/O1、I/O与流2、字节流3、字符流4、文件流5、管道流05异常处理1、什么是异常2、抛出异常3、异常捕获4、finally0601JAVA概述Green小组开发了面向数字家电的oak(橡树)语言,这也是Java语言的前身。1991JAVA概述01200919951998JAVA语言正式问世,并被美国著名杂志评为1995年十大优秀技术产品之一。推出Java2平台。性能上得到提升,并且对Java的基本模式进行了完善,提供更为丰富的API。4月20日,Oracle公司宣布正式以74亿美元收购Sun公司,Java商标正式归Oracle所有。J2SEJava2platformStandardEditionJ2EEJava2EnterpriseEditionJ2MEJava2MicroEdition010203JAVA概述01JDK&JREJavaDevelopmentKit&JavaRuntimeEnvironment04JVMJavavirtualmachine05JAVA概述01JAVA概述01面向对象以对象为基本粒度,其下包含属性和方法。对象的说明用属性表达,通过使用方法操作对象安全性Java的数据结构是完整的对象,编译时要进行Java语言和语义的检查,运行时由字节码校验之后才能运行跨平台软件不受计算机硬件和操作系统的约束可以在任意计算机环境下正常运行简单易用代码编写不拘泥与特定环境无关源文件进行编译,编译后直接运行多线程允许一个应用程序同时存在两个或两个以上的线程,用于支持事务并发和多任务处理bin目录提供实用程序demo目录自带的实例程序include目录支持Javanative方法的C/C++头文件BDIJAVA概述01jre目录运行Java环境所需的所有文件Jlib目录Java开发环境的库文件LSsample目录JDK新特性的一些事例程序02面向对象面向对象02类对象对象即某一类型物质的具体存在,在Java中用Object表示●PO:persistantobject持久对象,可以看成是与数据库中的表相映射的java对象。●VO:valueobject值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。●DAO:dataaccessobject数据访问对象,此对象用于访问数据库。●BO:businessobject业务对象,封装业务逻辑的java对象,通过调用DAO方法,结合PO,VO进行业务操作。●POJO:plainordinaryJavaobject简单无规则java对象,它和其他对象不是一个层面上的东西,VO和PO应该都属于它.类即类型,在Java中用class表示●类是蓝图或原型,它定义了所有某种类的对象的共有的变量和方法●类是具有共同属性和行为的对象的抽象与集合●类表示的一种类型,所以应用名词来表示,类名首字母应大小●属性表示的是一种状态,用名词,首字母小写●方法表示的是能做什么,用动词,首字母小写面向对象02封装在面向对象语言中,封装特性是由类来体现的,我们将现实生活中的一类实体定义成类,其中包括属性和行为,就好像人类,可以具有name,sex,age等属性,同时也具有eat(),sleep()等行为,我们在行为中实现一定的功能,也可操作属性,这是面向对象的封装特性继承继承就像是我们现实生活中的父子关系,儿子可以遗传父亲的一些特性,在面向对象语言中,就是一个类可以继承另一个类的一些特性,从而可以代码重用,其实继承体现的是is-a关系,父类同子类在本质上还是一类实体抽象抽象就是将一类实体的共同特性抽象出来,封装在一个抽象类中,所以抽象在面向对象语言是由抽象类来体现的。比如鸟就是一个抽象实体,因为抽象实体并不是一个真正的对象,它的属性还不能完全描述一个对象,所以在语言中体现为抽象类不能实例化多态多态就是通过传递给父类对象引用不同的子类对象从而表现出不同的行为,多态可为程序提供更好的可扩展性,同样也可以代码重用面向对象02重写override是重写了一个方法,以实现不同的功能。一般是用于子类在继承父类时,重写父类中的方法。1、重写方法的参数列表必须完全与被重写的方法的相同,否则不能称其为重写而是重载2、重写方法的访问修饰符一定要大于被重写方法的访问修饰符(publicprotecteddefaultprivate)3、重写的方法的返回值必须和被重写的方法的返回一致4、重写的方法所抛出的异常必须和被重写方法的所抛出的异常一致,或者是其子类5、被重写的方法不能为private,否则在其子类中只是新定义了一个方法,并没有对其进行重写6、静态方法不能被重写为非静态的方法(会编译出错)重载overload是重载,一般是用于在一个类内实现若干重载的方法,这些方法的名称相同而参数形式不同。1、在使用重载时只能通过相同的方法名、不同的参数形式实现。不同的参数类型可以是不同的参数类型,不同的参数个数,不同的参数顺序(参数类型必须不一样)2、不能通过访问权限、返回类型、抛出的异常进行重载3、方法的异常类型和数目不会对重载造成影响。03JAVA语言基础JAVA语言基础03标识符(1)就是给类,接口,方法,变量等起名字的字符序列(2)组成规则:A:英文大小写字母B:数字C:$和_(3)注意事项:A:不能以数字开头B:不能是java中的关键字C:区分大小写(4)常见的命名规则(见名知意)A:包全部小写单级包:小写多级包:小写,并用.隔开B:类或者接口一个单词:首字母大写举例:Student,Demo多个单词:每个单词首字母大写举例:HelloWorld,StudentNameC:方法或者变量一个单词:首字母小写多个单词:从第二个单词开始,每个单词首字母大写D:常量全部大写一个单词:大写多个单词:大写,并用_隔开JAVA语言基础03关键字访问控制privateprotectedpublic类,方法和变量修饰符abstractclassextendsfinalimplementsinterfacenativenewstaticstrictfpsynchronizedtransientvolatile程序控制breakcontinuereturndowhileifelseforinstanceofswitchcasedefault错误处理trycatchthrowthrows包相关importpackage基本类型booleanbytechardoublefloatintlongshortnulltruefalse变量引用superthisvoid保留字gotoconstJAVA语言基础03常量与变量(1)在程序执行的过程中,其值不发生改变的量(2)分类:A:字面值常量B:自定义常量(3)字面值常量A:字符串常量helloB:整数常量12,23C:小数常量12.345D:字符常量'a','A','0'E:布尔常量true,falseF:空常量null(1)在程序的执行过程中,其值在某个范围内可以发生改变的量(2)变量的定义格式:A:数据类型变量名=初始化值;B:数据类型变量名;变量名=初始化值;(3)变量可以在代码块中声明,每次创建一个新的块,就创建了一个新的作用域。常量变量JAVA语言基础03基本数据类型基本(简单)数据类型boolean–布尔型,可选值:true/false,1字节char–2字节,字符型如:a,b,我,-整数类型byte–1字节short–2字节int–4字节long–8字节浮点类型float–4字节double–8字节抽象(复合)数据类型classinterface数组(1)Java是一种强类型语言,针对每种数据都提供了对应的数据类型。(2)分类:A:基本数据类型:4类8种B:引用数据类型:类,接口,数组。JAVA语言基础03基本数据转换隐式显式由低----高byte---short---int---long---float---doubleinta=0;longb=a;doubled=‘我’;intx=0.0;floatf=1.1;shorts=2;intI=s;由高-低byteb=(byte)0.0;charc=(char)1.1;floatf1=2.2;floatf2=(float)2.2;inti=0;shorts=i;shortss=(short)iJAVA语言基础03字符和字符串JavaAPI提供了三个处理字符数据的类:StringBuffer:这个类用于存储和操作由多个字符组成的可变数据。123Character:这个类的实例可以容纳单一的字符数值。该类还定义了一些简洁的方法来操作或者检查单一字符数据。String:这个类用于处理由多个字符组成的不可变数据。JAVA语言基础03对象生命周期JAVA语言基础03运算符与控制语句运算符是用于执行计算的单个字符和多个字符的组合。表达式通常由多个运算符组成。优先级的规则决定每个运算符在任何给定表达式中的计算顺序顺序运算符1.括号,如()和[]2.一元运算符,如-、++、--和!3.算术运算符,如*、/、%、+和-4.关系运算符,如、=、、=、==和!=5.逻辑运算符,如&、^、|、&&、||6.条件运算符和赋值运算符,如?:、=、*=、/=、+=和-=JAVA语言基础03运算符与控制语句判断循环跳转if-else语句switch-case语句while循环do-while循环for循环continuebreakreturn04接口和包接口和包04接口包定义:接口是一个有名称的方法定义和常量定义的集合,但没有方法的实现。接口定义了一个行为协议,类层次结构中任何地方的任何类都可以实现.接口是由常量和抽象方法组成的特殊类:接口中的属性都是用final修饰的常量接口中的方法都是用abstract修饰的没有方法体的抽象方法。接口和包04接口包包是一种松散的类的集合,通常把需要在一起工作的类(互相访问)放入一个包。在Java语言程序设计中,通常需要定义许多类;就像利用“文件夹”把许多文件组织在一起,使硬盘管理的文件更清晰、更有条理一样;Java利用“包”把一些需要在一起操作的类组织在一起,以便程序员更好地管理操作这些类。引入的原因:容易找到和使用类避免名称冲突控制访问定义:包是一个相关的类和接口的集合,它可以提供访问保护和名称空间管理例如:基本的类在java.lang中;用于输入和输出的类在java.io中。接口和包04抽象类用abstract关键字修饰不能在类内实现的方法,这样的方法称为抽象方法,含有抽象方法的类必须声明为abstract,这样的类叫抽象类。抽象类中不一定包含抽象方法,但包含抽象方法的类一定要声明为抽象类抽象类本身不具备实际的功能,只能够用于派生时重写。如果一个类被定义为抽象类,则该类不能进行实例化,必须通过重写的方式来实现抽象类中的方法。接口和包04final,staticfinal修饰变量不能被修改final修饰成员方法不能被重写static修饰的成员方法叫静态方法publicstaticvoidmain(Stringargs[]){}static修饰的成员数据叫静态数据staticinta;目的使该方法或数据独立于类的实例,使用类去访问,而不是类实例,所以也叫全局方法和数据接口和包04访问修饰符类:●访问修饰符修饰符class类名称extends父类名称implement接口名称(访问修饰符与修饰符的位置可以互换)访问修饰符名称说明备注public可以被所有类访问(使用)public类必须定义在和类名相同的同名文件中package可以被
本文标题:JAVA基础讲解
链接地址:https://www.777doc.com/doc-3266512 .html