- 1、本文档共53页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章面向对象(上)
面向对象程序设计 什么是抽象 类中定义的属性与方法 类成员属性和方法的其它修饰符 类与对象及其关系 对象 构造方法 包(Package) 面向对象(上) 之 类与对象的关系 ●对象是对客观事物的抽象。 ●类是对对象的抽象,在语言中是一种抽象的数据类型。 ●类的定义在Java中可简述为 class classname{ } ●对象是类的实例,类是对象的模板。 对 象 对象的产生使用的代码: new FighterPlane(); 对象的声明使用的代码: FighterPlane fp ; 面向对象(上) 之 对象 ●对象的产生 new 对象 类 面向对象(上) 之 对象 ●对象的产生 FighterPlane fp ; fp = new FighterPlane(); FighterPlane fp = new FighterPlane(); 面向对象(上) 之 对象 ●对象内存分布 1、声明对象:在栈内存为对象的引用变量分配内存空间 2、实例化对象:在堆内存为对象的成员变量分配内存空间,并将其初始化为类型的默认值,然后调用构造方法,对成员变量进行初始化。 3、对象引用:返回在堆内存为对象的首地址给栈内存的引用变量。 面向对象(上) 之 对象 ●对象作为参数 普通数据类型作为参数传递是值传递,而对象是引用传递。 public class X { private static int a; public static void main(String [] args) { modify(a); System.out.println(a); } public static void modify(int a) { a++; } } 对象是引用传递,当对象作为参数传递时,传递的是对象的地址. 面向对象(上) 之 对象 ●对象作为参数 class IntClass { int value; } public class RunIntClass { public static void modifyValue(IntClass s,int val) { s.value = val; } public static void main(String args[]){ IntClass a = new IntClass(); modifyValue(a,8); System.out.println(a.value); } } 面向对象(上) 之 对象 ●对象数组 int[] a; int[] a = {0,1,2,3,4,5,6,7,8,9} 假设MyClass是一个自定义类 Myclass[] mc; Mc = new MyClass[10]; For (int i=0;imc.length; i++){ mc[i] = new MyClass[] } 面向对象(上) 之 对象 ●数组对象 Java语言将数组看做对象。 ⊙利用 new 方法进行实例化 ⊙数组变量即为数组对象的引用 ⊙数组作为参数的传递为引用传递 ⊙拥有成员变量(属性) 面向对象(上) 之 对象 ●数组对象 Public class ArgsPass{ public static void printArray(String[] args){ for(int i=0; iarg.length; i++){ System.out.println(args[i]) } } public static void main(String[] args){ printArray(args); } } 构造方法 面向对象(上) 之 构造方法 ●构造方法的概念 构造方法是一个与类名相同的类方法,当使用new创建一个对象,为新建对象开辟内存空间后,Java系统将自动调用构造方法初始化新建对象。 class IntClass{ int value; public IntClass(int val){ value = val; } } public class IntClassConstructor{ public static IntClass getInstance{ IntClass s = new IntClass(8)
您可能关注的文档
- 显卡常见故障分析.doc
- 2012-2013学年第一学期高一化学必修模块测试题.doc
- 氮的循环(第一节)说课课件.ppt讲课用.ppt
- 小学语文科质量分析.doc
- 11月份瓦斯评价.doc
- 大学英语第四册课后习题答案.doc
- 我与新课程改革(数学).doc
- 某高层住宅项目检验和试验计划.doc
- 调研题目问答.doc
- 网道营销大讲堂-网络创业需要知道的常识.ppt
- 金融产品2024年投资策略报告:积极适应市场风格,行为金融+机器学习新发现.pdf
- 交运物流2024年度投资策略:转型十字路,峰回路又转(2023120317).pdf
- 建材行业2024年投资策略报告:板块持续磨底,重点关注需求侧复苏.pdf
- 宏观2024年投资策略报告:复苏之路.pdf
- 光储氢2024年投资策略报告:复苏在春季,需求的非线性增长曙光初现.pdf
- 公用环保2024年投资策略报告:电改持续推进,火电盈利稳定性有望进一步提升.pdf
- 房地产2024年投资策略报告:聚焦三大工程,静待需求修复.pdf
- 保险2024年投资策略报告:资产负债匹配穿越利率周期.pdf
- 政策研究2024年宏观政策与经济形势展望:共识与分歧.pdf
- 有色金属行业2024年投资策略报告:新旧需求共振&工业原料受限,构筑有色大海星辰.pdf
文档评论(0)