版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象(2)第二章对象的创建和使用必须使用new关键字创建对象使用对象.成员变量来调用成员变量使用对象.方法(参数..)来调用对象的方法。同一类的每个对象有不同的成员变量存储空间。同一类的每个对象共享该类的方法。非静态方法是针对每个对象进行调用。第二章面向对象方法的重载方法的重载(overload)是指一个类中可以定义有相同的名字,但参数不同(参数类型不同或者是数量不同)的多个方法。调用时,会根据不同的参数选择对应的方法。例如:publicvoidtest(intd,intb){System.out.println(d>b?d:b);}publicvoidtest(doublea,doubleb){System.out.println(a>b?a:b);}第二章面向对象例2:构造方法的重载一个类PersonMain方法中Personp=newPerson();Personp1=newPerson(400);Personp2=newPerson(200,45);方法的重载第二章面向对象Person(){id=1000;age=25;}Person(intId){id=Id;age=30;}Person(intId,intAge){id=Id;age=Age;}第二章面向对象this关键字:是指向调用对象本身的引用名。在类的方法定义中使用的this关键字代表使用该方法的对象引用。当必须指出当前使用方法的对象是谁时要使用this。有时使用this可以处理方法中成员变量和参数重名的情况。this可以看作是一个变量,它的值是当前对象的引用。例如:classTest{
inti=0;Test(inti){this.i=i}}this关键字第二章面向对象static关键字在类中,用static声明的成员变量为静态成员变量,它为该类的公用变量,在第一次使用时被初始化。用static声明的方法为静态方法。如果想让一个类的所有实例共享数据,就要使用静态变量,也称之为类变量。静态变量将变量值存储在一个公共的内存地址。因为它是公共的地址,所以如果某一个对象修改了静态变量的值,那么同一个雷的所有对象都会受到影响。Java支持静态方法和静态变量,无须创建类的实例就可以调用静态方法。可以通过对象或类名(不需要实例化)访问静态成员。static关键字static关键字第二章面向对象例如:publicvoidtestOne(){b=b+10;a++;System.out.println(a);System.out.println("testOne"+b);}publicvoidtestOne(Strings){b=b+20;System.out.println(a);System.out.println("testTwo"+b);}第二章面向对象类的继承与权限控制Java中使用extends关键字实现类的继承机制,其语法规则为:<modifier>class<name>[extends<superclass>]{…………….}通过继承,子类自动拥有了基类(superclass)的所有成员(成员变量和方法)。Java只支持单继承,不允许多继承:
一个子类只能有一个基类
一个基类可以派生出多个子类继承中的权限控制classParent{privateinta=1;intb=2;protectedintc=3;publicintd=4;}classChildextendsParent{publicvoidf(){a=1;b=2;c=3;d=4;}}第二章面向对象访问控制Java权限修饰符(访问控制符)publicprotectedprivate置于类的成员定义前,用来限定其他对象对该类对象成员的访问权限。修饰符类内部同一个包子类任何地方privateYesdefaultYesYesprotectedYesYesYespublicYesYesYesYes对于class的权限修饰只可以用public和default。public类可以在任意地方被访问default类只可以被同一个包内部的类访问第二章面向对象方法的重写(overwrite)在子类中可以根据需要对父类中继承的方法进行重写。重写方法必须和被重写方法具有相同方法名称、参数列表和返回类型。重写方法不能使用比被重写方法更严格的访问权限。第二章面向对象package和import语句为了便于管理大型软件系统中数目众多的类,解决类的命名冲突问题,Java引入包(package)机制,提供类的多重命名空间。package语句作为Java源文件的第一条语句,指明该文件中定义的类所在的包。(若缺省该语句,则指定为无名包)。格式为:packagepag1[.pag2[.pag3…]];Java编译器把包对应了文件系统的目录管理,package语句中,用’.’来指明包的目录层次,例如使用语句:Packagecom.tz;则该文件中的类位于.\com\tz目录下。写法是com.tz.test如果将一个类打包,则使用该类时,必须使用该类的全名(例如:com,tz.test;),java编译器才会找到该类第二章面向对象package和import语句也可以使用import在文件的开头引入要使用到的类;例如:Importjava.util.*;//引入java.util包中所有类。…………MyClassmyClass=newMyClass();//可以直接使用类名…….可以不需要用import语句直接使用java.lang包中的类。如果想将一个类放入包中,在这个类源文件第一句话写package必须保证该类的class文件位于正确目录下该类的源
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国坐垫产业销售动态及消费趋势预测报告
- 2025-2030中国四氧化钛水溶液市场动态研究及发展态势展望报告
- 七年级数学教师总结7篇
- 商务黑金企业商务部门述职报告汇报模
- 口袋e店SaaS应用平台
- 企业生产安全培训课程
- 2025年广西壮族自治区河池市初二地理生物会考试题题库(答案+解析)
- 2026年广西壮族自治区玉林市中考化学考试真题带答案
- 2025年湖南娄底市八年级地生会考题库及答案
- 2025年广东省湛江市八年级地生会考真题试卷(含答案)
- 部队装备换季保养课件
- 小学有限空间作业应急预案(3篇)
- 物流运输突发事件应急预案
- 叙事护理在住院患者健康教育中的应用
- 【数学 北京版】2025年高考招生统一考试高考真题数学试卷(真题+答案)
- 人员资格报审表模板
- 2025具身智能行业发展研究报告
- 河北省唐山市2025届高三下学期第二次模拟演练数学试卷(含答案)
- IPC-A-610F-2014 电子组件的可接受性
- 中外航海文化知到课后答案智慧树章节测试答案2025年春中国人民解放军海军大连舰艇学院
- 大学美育 课程标准
评论
0/150
提交评论