版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021/3/91Orient Object Programming(Object、String、Wrapper Type、Arrays )面向对象编程(Object类、字符串类、包装类型类、数组)2021/3/92一、Object类几点说明Java.lang包中的类构成了Java语言的核心,该类库中的类是Java类库中最低级的类,Java系统自动隐含的将这个类库引入用户程序。该类库中主要的类:Object类、包装类型类(数据类型类)、Math类、System类等-查看Java API包Object类 是Java程序中所有类的直接或间接父类(基类、根类)1. 当一个类没有显示的继承关系时,表明
2、该类默认的继承Object类。class Circleextends Object2021/3/93观察Object类中的几种方法toString方法 (1)定义形式public String toString():返回该对象的字符串表示 (2)重写String方法举例equals方法 (1)定义形式public boolean equals(Object obj) (2)举例说明其作用 结论:Object类中的equals方法同“=”一样,用于比较两个对象的引用2021/3/94例class AA public static void main(Stringargs) AA a1=new A
3、A(); AA a2=new AA(); System.out.println(a1=a2 is +(a1=a2); System.out.println(a1.equals(a2) is +(a1.equals(a2); 2021/3/95二、String(字符串类)equals方法 (1)定义形式 public boolean equals(Object anObject) (2)举例说明其作用 考虑两种情况: a.申明为String类型,直接赋值;String s=“abcde”; b.创建包含指定字符串的String类对象;String s=new String(“abcde”); 总
4、结:总结:String类中的类中的equals方法重写了父类方法重写了父类Object类中的类中的方法,用于比较两个引用的内容方法,用于比较两个引用的内容2021/3/96查找String类中的方法,完成以下练习: 1. 编写一个Java Application程序,要求: (1)从命令行中任意输入一个字符串,均能从控制台上输出该字符串的长度。 (2)若输入的字符串为“quit”时,则从控制台上输出“结束!”。2021/3/97三、包装类型类(数据类型类)每一个数据类型类都对应了一个基本数据类型,同时包含了若干方法查看Java API包 请写出包装类型类的层级结构2021/3/98几点说明:1
5、、包装类型类都覆盖了Object类的toString方法、以字符串的形式返回包装对象所表示的基本数据类型。class Demo public static void main(Stringargs) Integer i=new Integer(5);/JDK1.5之前将一个int量5包装成一个Integer对象 /*int j=5; Integer i=j; /JDK1.5之后的自动包装操作*/ System.out.print(i.toString(); 2、除Character和Boolean以外,包装类型类都有如下方法:public static YYY valueOf(String s
6、) :根据String类型的参数来创建包装类对象(其中YYY表示包装类型类) Integer i=Integer.valueOf(5); Double d=Double.valueOf(123); Float f=Float.valueOf(123.5);2021/3/993、除Character和Boolean以外,包装类型类都有如下方法:public static XXX parseXXX(String s) :将字符串转化为相应的基本数据类型的数据(其中xxx表示基本数据类型的名称)Integer i=Integer.parseInt(5);Double d=Double.parseDo
7、uble(123);Float f=Float.parseFloat(123.5);2021/3/910观察总结包装类的特点1、都是final类2、包装类是不可变类,一个包装类的对象被创建以后,就确定了其基本数据类型3、jdk1.5以后的版本支持基本类型和包装类型的混合运算、而以前的版本必须进行转换static Integer add(Integer a,Integer b) int sum=Value()+Value();/Integer类型转换为int类型 return new Integer(sum);/int类型转换为Integer类型 2021/3/911四、数组
8、(在Java中数组也是对象)相同数据类型的元素按一定顺序线性排列就构成了数组1.一维数组的申明与创建(1)数组的声明:名称和数据类型数组元素类型 数组名 int b 或 intb 注意:申明数组时,不能指明数组的长度。如,int b3非法(2)创建数组:指明数组空间长度数组名 = new 数组元素类型元素的个数b = new int10 ;/定义了b0、b1b9,且数组下标从0开始也可int b = new int10/创建一个int数组,存放10个int类型数据2021/3/9122.一维数组的创建与初始化 int x=new int1,2,3,4,5;/动态初始化 创建长度为5的数组,并对
9、它初始化 int y=1,2,3,4,5;/静态初始化 Strings=Mary,Tom; charc=a,b,c,d int x=new int51,2,3,4,5;/错误,不能在中指明数组的长度 int y; y=1,2,3,4,5 ;/错误,必须在声明变量的语句中使用,不能单独使用2021/3/9133、数组的属性:length (表示数组的长度) 例如: int b = new int10 ; System.out.println(b.length);/输出102021/3/914课堂练习:编写一个Java Application 程序,程序名为Compute.java。要求从命令行任
10、意输入任何数字,均能从控制台将这些数字每隔一个制表符位输出,同时还输出它们的平均值。2021/3/9154.两维数组的声明与创建(数组中的数组)(1)声明 int x;或int x;注意:申明数组时,不能指明数组的长度。如,int b23非法(2)初始化 a.直接初始化(静态初始化) int x=1,2,2,3,3,4,5 b.动态初始化 (a)直接为每一维分配空间 Int a=new int23; (b)从最高维开始,为每一维分配空间 int a=new int2 a0=new int3; a1=new int5; c.计算二维数组的长度 2021/3/916假设一个书架有三层,第一层有5格
11、,第二层有3格,第三层有4格用二维数组存储每个书格中的数的信息 String books = new String3 ;books0= new String“Java”,null,“C语言”,null,“网络技术”;/为最高维分配引用空间的同时,为每个数组元素单独分配空间books1= new Stringnull,UML,数据库概论;books2= new StringJSP,null,.NET,null;2021/3/917以上代码等价于String books = Java,null,C语言,null,网络技术,null,UML,数据库概论,JSP,null,.NET,null;或Str
12、ing books = new String3 ;books0=new String5; books1= new String3;books2=new String4; books00=new String (“Java”); books01=new String(); books20= new String(JSP); books24=new String();若每一层都是5格,就可这样创建String books = new String3 5;2021/3/918课堂练习:请用程序在控制台上打印输出每一格的书名2021/3/919class TwoDimensionArraysDemo public static void main(Stringargs) String books = new String3 ;books0= new StringJava,null,C语言,null,网络技术;books1= new Stringnull,UML,数据库概论;books2= new StringJSP,null,.NET,null; /为每一格定一个编号 System.out.println(书架中存放书的信息如下:); f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度新能源储能系统承包安装合同4篇
- 2024美容美发产品购销简单合同范本
- 2025年度深层水文地质勘探打井劳务服务合同4篇
- 2024版智能家居设备租赁合同
- 2024私人房屋买卖合同范本53299
- 2024销售无标签油烟机合同范本
- 2024版金融信息服务框架合同
- 2024运营总监企业创新机制与激励机制合同3篇
- 2025年度停车场照明设施改造承包合同4篇
- 2021-2026年中国饮料瓶智能回收机市场调查研究及行业投资潜力预测报告
- 拆迁评估机构选定方案
- 床旁超声监测胃残余量
- 上海市松江区市级名校2025届数学高一上期末达标检测试题含解析
- 综合实践活动教案三上
- 《新能源汽车电气设备构造与维修》项目三 新能源汽车照明与信号系统检修
- 2024年新课标《义务教育数学课程标准》测试题(附含答案)
- 医院培训课件:《静脉中等长度导管临床应用专家共识》
- 趣味知识问答100道
- 中国国际大学生创新大赛与“挑战杯”大学生创业计划竞赛(第十一章)大学生创新创业教程
- 钢管竖向承载力表
- 2024年新北师大版八年级上册物理全册教学课件(新版教材)
评论
0/150
提交评论