已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第8章常用的系统类及内部类,Object类System类Math类基本数据类型包装类Date、Calendar和SimpleDataFormat类内部类,8.1Object类,Java中所有类的顶层类;注意=与equals方法的区别;Object中的equals方法返回的也是对象地址的比较且不能比较基本数据类型;equals方法的覆盖,根据自己的需要进行特定的重写;Object中toString方法返回的是:对象的类名16进制哈希码;println方法中参数为对象时,实际打印的是toString方法中的内容;因此,建议按自己的需求覆盖toString方法。,8.1.1equals方法的覆盖,Publicbooleanequals(Objectobj);Object中的这个方法比较的是地址,因此我们应当在自己的类中按自己的要求覆盖这个方法;步骤:测试形参是否为null;测试类型是否匹配;将obj强转为自己的类所属的类型。最后,比较所有字段。使用=比较基本数据类型,使用equals方法比较对象如果所有字段均匹配返回true,否则返回false。,例如:equals方法的覆盖,classPointTestprivateintx;privateinty;publicPointTest()publicPointTest(intx,inty)this.x=x;this.y=y;publicbooleanequals(Objectobj)if(objinstanceofPointTest),8.1.2toString方法的覆盖,publicStringtoString()returnx=+x+,y=+y;classTestpublicstaticvoidmain(Stringargs)PointTestpt1=newPointTest(3,3);PointTestpt2=null;System.out.println(pt1.equals(pt2);,8.2System类,System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的,所以也可以很方便的进行调用。具体的成员变量和方法参照帮助文档,8.3Math类,Java中的Math类属于java.lang包中,Math的所有方法均用static声明,所以使用该类中的方法时,可以直接使用包名方法名,如:Math.sin();Math类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数、四舍五入函数、随机函数、绝对值函数、n次方函数等等。具体的成员变量和方法参照帮助文档,8.4基本数据类型的包装类,Java中基本数据类型分为四类八种。对应每一种基本数据类型JavaSE中都提供了包装类,提供了对应的基本数据类型数据操作的方法。如下表:具体的成员变量和方法参照帮助文档,8.5Date类、Calendar类、DataFormat类,JavaSE中的Calendar(日历)、Date(日期)和SimpleDateFormat(日期格式)组成了Java标准的一个基本但是非常重要的部分。日期是商业逻辑计算一个关键的部分,所有的开发者都应该能够计算未来的日期、定制日期的显示格式并将文本数据解析成日期对象。这三个类中提供了非常重要的属性或者方法来实现商业逻辑中关于日期数据的处理。Date类:从Java开发包(JDK)1.0就开始进化,当时它只包含了几个取得或者设置一个日期数据的各个部分的方法。比如说月、日和年,这些方法现在遭到了批评并且已经被转移到了Calendar类里去了。这种改进旨在更好的处理日期数据的国际化格式。Date类实际上只是一个包裹类,它包含的是一个长整型数据,表示的是从GMT(格林尼治标准时间)1970年1月1日00:00:00这一刻之前或者是之后经历的毫秒数。SimpleDateFormat类:为了实现日期格式的定制或者是将字符串日期转换为日期对象,这样的功能SimpleDateFormat类完全可以提供。Calendar类:Calendar类可以帮助我们设置和获取日期数据的特定部分比如说小时、日或者分钟等等。,8.6内部类,内部类可以用protected、private修饰;不管非静态内部类还是静态内部类,都作为外部类的一个成员来对待,与类的非静态成员和静态成员的使用方法基本相同;内部类直接访问外部类的成员。非静态内部类中不允许有静态的成员;创建非静态内部类对象:Outero=newouter();Outer.Inneri=o.newInner();创建静态内部类对象:Outer.Inneri=newOuter.Inner();内部类访问外部类同名成员时用Outer.this访问。,8.6.1非静态内部类,classOuterinta;classInnerinta;publicvoidfun1()a+;intb=Outer.this.a;publicvoidfun()Inneri=newInner();i.fun1();publicstaticvoidmain(Stringargs)Outero=newOuter();Outer.Inneri=o.newInner();i.fun1();,方法中的内部类严格按书中的使用要点去做;方法中的内部类作用范围只在方法中;方法中的内部类只能访问方法中的常量,不能访问方法中的变量。外部实际
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上半年上海基金从业资格:基金国际化考试试卷
- 小升初考前总复习39道题
- 华中师大《语用与交际》练习测试题库及答案
- 2022年湖南主治医师(心胸外科学)考试真题卷
- 吉林省公务员(甲级)《行测》真题之数量关系
- 国家开放大学电大《商法》题库
- 公务员考试-试题行政职业能力测试常识判断
- 公务员考试公共基础知识试题及参考答案5
- 2025年公务员技能大赛面试题目
- 外科考博试题
- DB61 1226-2018 锅炉大气污染物排放标准
- 静电场调控蛋白质自组装-洞察及研究
- (2025年标准)卡丁车俱乐部免责协议书
- 2025年传达学习医疗机构重大事故隐患判定清单会议记录
- 八年级语文古诗文默写训练试题
- 2025国家教育行政学院招聘9人(非事业编)笔试参考题库附答案解析
- 公司公开招聘简章(模板)
- 学校教师队伍结构及能力素质调查问卷
- 医学科研项目伦理审查汇报
- 南海军事理论课件
- 农村工匠安全知识培训课件
评论
0/150
提交评论