版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章Java基础知识类和对象学习笔记第三章Java基础知识类和对象学习笔记第三章Java基础知识类和对象学习笔记xxx公司第三章Java基础知识类和对象学习笔记文件编号:文件日期:修订次数:第1.0次更改批准审核制定方案设计,管理制度第三章小结提纲java 面向对象基础 1、什么是对象:物体在人脑中的映像。 2、对象的基本构成:实体对象:静态属性和动态功能。逻辑对象 3、如何进行对象的抽象:1)分析物体的静态属性,2)分析物体的动态功能,3)抽取公共的属性和功能,4)加入个性化的属性和功能 4、抽象对象和实体对象的关系,一个抽象对象多个实体对象 5、Java中的类和对象:Java中的类就是抽象对象,Java中的对象就是实体对象。 面向对象的三大特征 1、封装:将属性和方法封装在一起,隐藏属性方法通过界面访问 2、继承:(extends)子类继承父类的属性和方法,实现代码复用 3、多态:同一个行为具有多种不同的实现,使用方法的定义比较简单。 Java类的基本构成: 1、JAVA类的组成 2、包:package组织原代码与文件的路径,避免命名冲突 3、import:为了能够使用一个包的成员就要导入该包。import包.* 4、访问修饰符:private、default、protected、public 5、构造方法:功能是在创建时初始化成员变量,在创建对象时会自动调用该类的构造方法,也就是说构造方法其实是一个回调方法 1)构造方法必须与该类具有相同的名字,并且没有方法返回类型(包括没有void)2)一个类必须有一个构造方法,3)如果不写有一个默认空的构造方法 6、析构方法 7、属性:对象的静态属性;规则访问修饰符修饰符类型属性名称=初始值;类型、属性名称必不可少。 8、方法:对象的动态功能。规则访问修饰符修饰符返回值类型方法名称(参数列表)throws异常列表{方法体}返回值类型、方法名称(参数列表)是必不可少的。 形参和实参:形参:就是形式参数。是在定义方法名时使用的参数,实参:就是实际参数。在调用方法时传递给该方法的实际参数。 9:再谈变量 实例变量:就是类的属性。 局部变量:在方法内定义的变量或方法的参数被称为局部 变量初始化:所有变量在使用前都必须初始化。 10、引用类型:引用类型指向内存空间 引用类型是什么 引用类型赋值 内存分配示意图 按值传递引用传递 11、Java类的基本运行顺序 12、包装类: 什么是包装类 能干什么 基本类型和包装类的对应 自动包装和解包 13、类型转换 强制类型转换 自动升级: 表达式升级 +++++++++++++详细课件+++++++++++++++++++++++++类和对象 1、什么是对象 1)对象是直实世界的物体在人脑中的映像,(实体对象和逻辑对象) 2、对象的基本构成(对象有什么) 1)属性(静态的属性) 2)方法(动态的功能) 3、什么是抽象 1)抽象是在思想上把各种对象或现象之间的共同的本质属性抽取出来而舍去个别的非本质的属性的思维方法。 也就是把一系列或类似的实体对象的特点抽取出来,采用一个统一的表达方式,就是抽象、 2)如何对对象进行抽象 第一步:分析各种车对象的静态属性 第二步:分析各种车对象的动态功能 第三步:抽取出公共的属性和功能 第四步:考虑是否加入一些个性化的属性和功能 3)抽象对象和实体对象之间的关系 抽象对象只有一个,实体对象无数个 大大简化了对象的描述工作,使用一个对象就可以统一地描述某一类实体,在需要具体实体时,分别设置不同的值就可以表示具体对象了。 4)抽象对象和类型 一个抽象对象==一类 4、Java中如何表达抽象对象和实体对象 1)Java中的类 把抽象对象使用Java表达出来,那就是类class。 类在Java编程语言中作为定义新类型的一种途径,类声明可定义新类型并描述这个类型是如何实现的。 抽象对象中的属性就是对应为Java类的属性。 抽象对象中的功能就是对应为Java类的方法。 2)Java中的对象 Java中的对象是在Java中一个类的实例,也称实例对象。 类可被认为一个模板,一个对象就是创建一个类的实例的结果。 5、Java类的基本构成 1)Java类的定义形式 一个完整的Java类由六部分组成 包定义语句package import语句 类定义{ 成员变量; 构造方法; 成员方法; } 类定义和{}里的内容是不可以或缺的 ①什么是包(就是文件夹) 在Java中,包是类、接口或其它包的集合,包主要用来将类组织起来成为组,从而对类进行很管理。 ②包能干什么(用来组织和管理类的) 1)包允许将包含类代码的文件组织起来,易于查找和使用适当的类。 2)包不止是包含类和接口,还能够包含其它包。形成层次的包空间。 3)它有助于避免命名冲突。 ③JDK中常用的包 包、包(工具包)、包(图形包)、包(图形包)、包(输入出流包)、包(网络包)等 ④Java中如何表达包--package语句 放在第一条语句 package包名.包名2 如何编译和生成包 javac-d包的完整路径 如何运行 运行带包的程序,需要使用类的全路径,也就是带包的路径 java包的完整路径.类名 说明 1、java编译器把包对应于文件系统的目录管理,也就是说同包同目录 2、每个源文件只有一个包的声明 3、包名应该全部小写,多个包名中间用点分隔 ⑤import的功能 为了能够使用某一个包的成员,需要在Javat程序中明确导入该包。使用import语句可完成此功能。 import语句为编译器指明了寻找类的途径。 import语法 import|* 说明 1、import语句应位于package语句之后,类定义之前 2、使用*号表示引入包下所有的类。当然也可以指明要引入的具体的类。 3、一个类可以有0或多条import语句 ⑥Java类搜寻方式 程序中的import语句标明要引入P1包中的Test类,假定环境变量CLASSPATH的值为“.;c:\jdk6\lib;d:\ex”java运行环境依次寻找, 其中"."代表当前路径,如果在第一个路径下就找到了所需的类文件,则停止搜索。否则依次搜索后续路,如果在所有的路径中都未找到所需的类文件,则编译或运行出错。 注:Java搜寻类的时候是找到一个符合的就停止搜索。 2)Java类的基本构成-访问修饰符 Java语言允许对类和类中定义的各种属性和方法进行访问控制,即规定不同的保护等级来限制对它们的使用。 ①Java引入访问修饰符的目的 实现信息的封装和隐藏 ②Java访问修饰符的具体规则 可否直接访问控制等级同一个类中同一个包中不同包中的子类的对象任何场合 private Yes 无修饰符 Yes Yes protected Yes Yes Yes public Yes Yes Yes Yes ③类的定义形式如下: <访问修饰符>[一般修饰符]class<类名>{ [<属性定义>]; [<构造方法定义>]; [<方法定义>]; } ④什么是构造方法 类有一个特殊的成员方法叫作构造方法。它的作用是在创建对象时初始化成员变量。在创建对象时,会自动调用类的构造方法, 也就是说构造方法其实是一个回调方法。 ⑤构造方法定义规则 构造方法必须与该类具有相同的名字,并且没有方法返回类型(包括没有void). 通常都是public,当然也可以使用其他的访问修饰符。 构造方法可以有参数,也可以没有参数。 说明: 每一个类至少有一个构造方法。如果不写一个构造方法,Java编程语言将提供一个默认的,该构造方法没有参数,而且方法体为空。 注意: 如果一个类中已经定义了构造方法则系统不再提供默认的构造方法。 ⑥析构方法 Java类的基本构成--属性 ①什么是属性 简单点说,类的属性就是对像的静态属性。 ②定义规则 访问修饰符修饰符类型属性名称=初始值; 访问修饰符:可以使用四种不同的访问修饰符中任一种 修饰符:是对属性特性的描述,例如staticfinal等 类型:属性的数据类型,可以是任意类型。 属性名称:任何合法标识符。 初始值:赋值给属性的初始值。如果不设置,那么会自动进行初始化,基本类型使用的缺省值,对象类型自动初始化为null. 说明: 属性有时候也被称为成员变量,实例变量,域,它们经常被互换使用。 属性中类型、属性名称必不可少。 Java类的基本构成--方法 ①什么是方法 方法就是对象所具有的动态功能。 ②定义规则 访问修饰符修饰符返回值类型方法名称(参数列表)throws异常列表{方法体} 访问修饰符:可以使用四种不同的访问修饰符中任一种 修饰符:是对属性特性的描述,例如staticfinal等 返回值类型:表示方法返回值的类型。如果方法不返回任何值,它必须声明为void(空),java技术对返回值是很严格的,例如,如果声明某方法返回一个int值,那么方法必须从所有可能的返回路径中返回一个int值(return值)。 方法名称:可以是任何合法标识符 参数列表:允许将参数值传递到方法中。列举的元素由逗号分开,而每一个元素包含一个类型和一个标识符。 throws异常列表:throws子句导致一个运行时错误或异常被报告到调用的方法中,以便以合适的方式处理它。 花括号内是方法体:即方法的具体语句序列。 说明: 定义方法时返回值类型、方法名称(参数列表)是必不可少的 Java类的基本构成--形参和实参 ①什么是形参 形参:就是形式参数。是在定义方法名时使用的参数,用来标识方法接收的参数类型,在调用该方法时传入。 publicdoublerun(doubleoil,booleandrive){ } 速度run(给油,有人驾驶){ 具体运行: .numbers){操作符,如下: ="BMW"; =4; =1; ④this关键字:是用来指向当前对象或类实例的 ⑤this关键字的功能: 1、点取成员 就是在编写类的时候,通过使用this来点取类的属性。java编程语言自动将所有实例变量和方法引用与this关键字联系在一起,因此使用关键字在某些情况下是多余的,也就是写不写this都是一样的. 2、区分成员变量 就是在类属性上定义的变量和方法内部定义的变量相同的时候,到底是调用谁呢如果使用this就表示调用属性,否则就调用方法内部的变量。 3、作为方法来初始化变量 publicclassTest{ publicTest(){ this(3);明显BMWCar和BenzCar都是Car,都继承自Car。所以:BMWCarisaCar、BenzCarisaCar 5、has-a的关系 在javaj里面has-a是用来描述对象组合关系。 比如说宝马车有一个方向盘,奔驰车也有一个方向盘,而宝马和奔驰的方向盘是不一样的。 那么这种对象拥有属性或其他对象的这种关系,就用has-a来描述面向对象三大特征---多态 1、什么是多态 同一行为的多种不同表达,或同一行为的多种不同实现就叫多态 2、多态的功能 可以简化行为的描述,可以让同一个行为最后有多种不同的实现。 比如说我们说“笔”这个对象,它就有很多不同的表达或实现,比如有钢笔、铅笔、圆珠笔等。那么我说“请给我一支笔”,你给我钢笔、铅笔或圆珠笔都可以,这里的“笔”这个对象就具备多态。 publicclassMeextendsPerson{ publicbooleanrunZGC(Carcar){ returntrue; } publicstaticvoidmain(Stringargs[]){ Met=newMe(); Carcar1=newBMW(); Carcar2=newBenz(); (car1); } } ********************************************************引用类型 1、什么是引用类型 引用类型(referencetype)是指向一个对象而不是原始值的类型,提向对象的变量是引明变量。 在Java里面除去基本数据类型的其它类型都是引用数据类型。java程序运行时,会为引用类型分配一定量的存储空间并解释存储空间的内容 String例外下面都可 Strings=""; Strings2=newString("121212"); 2、引用类型的赋值 Carcar1=newCar(); Carcar2=car1; 第一句:car1指向newCar()得到的内存空间,也就是说将newCar()得到的内存空间赋给car1 第二句:将car1的值赋给car2,因为car1指向newCar()得到的内存空间,所以car2也指向newCar()得到的内存空间。 一个变量只能指向一个内存空间。 如果在上面两句下再加一句 Carcar2=newCar();那么car2就只指向下一句的内存空间引用类型---按值传递和按引用传递 1、按值传递是什么 指的是在方法调用时,传递的参数是按值的拷贝传递。 按值传递重要特点:传递的是值的拷贝,也就是说传递后就互不相关了。 说明:基本类型和String类型都是按值传递 publicclassTempTest{ privatevoidtest1(inta){ a=5; "test1方法中的a==="+a); } publicstaticvoidmain(String[]args){ TempTestt=newTempTest(); inta=3; (a);while(i<5);在执行完成后,i和j的值分别是多少++++++++++++++++++++++++++++++++++++++++++++++++++++++++++包装类 1、什么是包装类 JDK中针对各种基本类型分别定义相应的引用类型,称这些引用类型为包装类(WrapperClasser) 2、为什么需要包装类 虽然Java语言是典型的面向对象编程语言,但其中的8种基本数据类型并不支持面向对象的编程机制,基本类型的数据不具备“对象”的特性-----不携带属性、没有方法可调用。沿用它们只是为了迎合人类根深蒂固的习惯,并的确能简单、有效地进行常规数据处理。 为了让基本类型也能够具备其他引用类型所具有的特性,比哪继承自Object的功能,Java引入了包装类。 3、基本数据类型和包装类的对应 基本数据类型 对应的包装类 boolean Boolean byte Byte short Short int Integer long Long char Character float Float double Double 说明: 1)每个包装类的对象可以封装一个相应的基本类型的数据,并提供了其它一些有用的功能,具体的看API文档(应用程序接口) 2)包装类对象一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学五年级英语Unit 1 Different friends Part B Let's talk教学设计
- 高三地理二轮复习专题教学设计:区域位置与分布特征的判读、描述与应用
- 八年级地理下册“白山黑水”东北三省教学设计
- 初中八年级体育与健康教学设计:排球移动中双手正面垫球
- 陕西省咸阳市名校2027届中考物理考试模拟冲刺卷含解析
- 2027届山西省临汾市侯马市、襄汾县中考猜题物理试卷含解析
- 2027届江苏省无锡市天一实验学校中考物理五模试卷含解析
- 安徽省六安市叶集区2027届中考物理模拟试题含解析
- 2027届江苏省海安八校中考物理全真模拟试题含解析
- 2027届天津市重点中学毕业升学考试模拟卷物理卷含解析
- 2026校招:腾讯公司试题及答案
- 瘫痪病人足下垂课件
- YB-T5034-2024《履带用热轧型钢》
- 小学生科普芯片
- 畜禽养殖废弃物资源化利用
- 2025年技师仓储管理试题及答案
- 2026年高中政治学业水平考试知识点归纳总结(必修一-四)
- 2025年高中地理学法指导课件
- 酵素肥料讲解课件
- 消防维保课件
- 心外进修总结汇报
评论
0/150
提交评论