全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
构造方法调用浅谈关键字: java 构造方法 在学习JAVA过程中,必须要了解这些基本的东西才能对读代码少些困惑,而这些细节是新手必须注意的。总结:初始化的顺序为:先初始化父类的静态代码-初始化子类的静态代码-(创建实例时,如果不创建实例,则后面的不执行)初始化父类的非静态代码-初始化父类构造函数-初始化子类非静态代码-初始化子类构造函数 子类继承父类会先初始化父类,调用父类的构造函数,子类的构造方法的第一条语句就是调用父类的没有参数的构造方法,如果你没有写出这条语句java虚拟机就会默认的调用,如果你显示的写了这条语句,就一定要写在构造方法中的第一条语句,不然会报错原理简述:只有在构造方法中调用了父类的构造方法才能继承父类的相关属性和方法,要不然子类从哪里继承父类的属性和方法,在实例化子类的时候又没有和父类有任何关系。子类的构造函数默认调用和这个构造函数参数一致的父类构造函数,除非在此子类构造函数的第一行显式调用父类的某个构造函数。类Example1Java代码 1. classfather 2. intx=0,y=0; 3. father() 4. System.out.println(nowisinfathersconstructor); 5. 6. father(intx,inty) 7. this.x=x; 8. this.y=y; 9. 10. publicvoidprint() 11. System.out.println(x=+x+;y=+y); 12. 13. 14. classsonextendsfather 15. son() 16. System.out.println(nowisinsonsconstructor); 17. 18. son(intx,inty) 19. super(x,y);/改变x,y,的值,若无super(x,y),则默认调用father() 20. 21. publicvoidprint() 22. super.print(); 23. System.out.println(mynameisson!); 24. 25. 26. publicclassExample1 27. publicstaticvoidmain(Stringargs) 28. sons=newson();/实例化构造的时候从父类开始调用 29. s.print();/此处不是构造,是调用 30. sonf=newson(10,20); 31. 32. f.print(); 33. 34. class father int x=0,y=0; father() System.out.println(now is in fathers constructor); father(int x,int y) this.x=x; this.y=y; public void print() System.out.println(x=+x+;y=+y); class son extends father son() System.out.println(now is in sons constructor); son(int x,int y) super(x,y);/改变x,y,的值,若无super(x,y),则默认调用father() public void print() super.print(); System.out.println(my name is son!); public class Example1 public static void main (String args) son s=new son();/实例化构造的时候从父类开始调用 s.print();/此处不是构造,是调用 son f=new son(10,20); f.print(); 运行结果:nowisinfathersconstructornowisinsonsconstructorx=0;y=0mynameisson!x=10;y=20mynameisson!类Example2:Java代码 1. classfather 2. intx=0,y=0; 3. father() 4. System.out.println(nowisinfathersconstructor); 5. 6. father(intx,inty) 7. this.x=x; 8. this.y=y; 9. 10. 11. publicvoidprint() 12. System.out.println(x=+x+;y=+y); 13. 14. 15. classsonextendsfather 16. son() 17. System.out.println(nowisinsonsconstructor); 18. 19. son(intx,inty) 20. /改变x,y,的值 21. System.out.println(s213); 22. 23. publicvoidprint() 24. /引用父类的print函数 25. System.out.println(mynameisson!); 26. 27. 28. publicclassExample2 29. publicstaticvoidmain(Stringargs) 30. sons=newson();/实例化构造的时候从父类开始调用 31. s.print();/此处不是构造,是调用,oh,yeah! 32. sonf=newson(10,20);/先调用父类的father()System.out.println(nowisin 33. /而不是father(intx,inty)this.x=x;this.y=y; 34. 35. f.print(); 36. 37. class father int x=0,y=0; father() System.out.println(now is in fathers constructor); father(int x,int y) this.x=x; this.y=y; public void print() System.out.println(x=+x+;y=+y); class son extends father son() System.out.println(now is in sons constructor); son(int x,int y) /改变x,y,的值 System.out.println(s213); public void print() /引用父类的print函数 System.out.println(my name is son!); public class Example2 public static void main (String args) son s=new son();/实例化构造的时候从父类开始调用 s.print();/此处不是构造,是调用, oh,yeah! son f=new son(10,20);/先调用父类的father()System.out.println(now is in /而不是fa
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 考研小学奥数题库及答案
- 机电电工实操考试题库及答案
- 四川电工证考试题库及答案
- 我们的节日:中秋节的记忆记事作文14篇
- 2025年数字艺术行业创作技术探索研究报告及未来发展趋势预测
- 2025年数字影视行业数字影视内容创新技术研究报告及未来发展趋势预测
- 2025年地产行业数字化营销策略案例分析报告
- 2025年教育科技行业在线学习平台用户画像研究报告及未来发展趋势预测
- 三基骨科护理考试题库及答案解析
- 采购成本控制分析标准化报告模板
- 建筑材料及构配件理论考试复习题库及答案
- 助贷机构及人员从业禁止
- 基础会计第12版第8章成本计算
- 一、等离子体基本原理
- 高中地理必修一期中考试的试卷(含答案)
- 卡托普利的不良反应和安全性研究
- 高教版【中职专用】《中国特色社会主义》期末试卷+答案
- 色盲测试色盲自检
- 护师岗位竞聘述职报告
- 《导热油培训》课件
- 婚姻与家庭心理学
评论
0/150
提交评论