1 / 31
文档名称:

06 面向对象编程的深入讨论.ppt

格式:ppt   页数:31
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

06 面向对象编程的深入讨论.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

06 面向对象编程的深入讨论.ppt

文档介绍

文档介绍:面向对象编程的深入讨论
第六章
目标
构造函数的执行机制
屏蔽、覆盖和重载
对象间的类型转换
对象之间的比较
2
构造函数的执行机制
构造函数的作用:对创建的对象进行初始化
类的继承机制:子类可以使用父类的功能(即代码),
那么子类对象的初始化要使用到父类的构造函数。
3
class SuperClass {
SuperClass() {
("SuperClass constructor");
}}
public class SubClass extends SuperClass {
SubClass() {
("SubClass constructor");
}
public static void main(String[] args) {
SubClass sub = new SubClass();
}
}
例子6-1
类在继承关系上的初始化的顺序
4
例子6-1
在子类中只实例化了一个子类对象。
从输出结果上看:
程序并不是一开始就运行自己的构造方法,
而是先运行其父类的默认构造方法。
注意:程序自动调用其父类的默认构造方法。
子类对象初始化
父类
构造函数
5
class SuperClass{
SuperClass(String str) {
("Super with a string.");
}
}
public class SubClass extends SuperClass{
SubClass(String str) {
("Sub with a string.");}
public static void main(String[] args) {
SubClass sub = new SubClass("sub");
}
}
SubClass未找到其父类的默认构造方法SuperClass() ,编译通不过
SuperClass() { };
方法1:在父类中增加一个默认构造方法。 SuperClass(){};
//SuperClass() { };
super(str);
方法2:在子类的构造方法中第一句增加“super(str)”
例6-2:
6
public class Test {
public static void main(String[] args){
("Test main()");
Car car = new Car("car");
}}
输出结果为:
Test main()
wheel-1
wheel-2
wheel-3
car
例6-3:对象的初始化顺序问题
在main()方法中初始化car类的对象时,
先初始化car类的成员变量,(成员变量是wh对象则调用该对象相应的构造方法)。
而后再初始化car类的对象, 即调用car类的构造方法
class Wheel {
Wheel(String str) {
(str);
} }
class car {
Wheel wheel_1 = new Wheel ("wheel-1");
Wheel wheel_2 = new Wheel ("wheel-2");
Wheel wheel_3 = new Wheel ("wheel-3");
Car(String str) {
(str);
} }
7
例6-3:对象的初始化顺序
在创建对象时,对象所在类的所有数据成员会首先进行初始化
如果其中的成员变量有对象,那么它们也会按照顺序执行初始化工作。
在所有类成员初始化完成后,才调用对象所在类的构造方法创建对象。构造方法作用就是初始化。
在test类中创建car对象时,先
初始化“car”类的成员变量
成员变量wheel_1, wheel_1,
wheel_1等按顺序初始化
最后调用car类的构造函数
8
public class Test {
public static void main(String[] args){
("Test main()");
Car car_1 = new car("car-1");
("------------");
Car car_2 = new car("car-2");
}
}

最近更新

2024年合肥科技职业学院单招职业适应性测试模.. 39页

2024年吉林电子信息职业技术学院单招职业适应.. 39页

2024年吉林通用航空职业技术学院单招综合素质.. 41页

2024年吕梁职业技术学院单招职业倾向性考试题.. 39页

2024年呼和浩特职业学院单招职业适应性考试模.. 41页

2024年哈尔滨北方航空职业技术学院单招职业倾.. 40页

2024年哈尔滨电力职业技术学院单招职业倾向性.. 40页

2026年优秀写景的作文900字 11页

2024年四川工程职业技术学院单招职业适应性考.. 39页

2024年四川托普信息技术职业学院单招综合素质.. 40页

2024年四川文化艺术学院单招职业技能考试模拟.. 41页

2024年塔城职业技术学院单招职业倾向性考试模.. 40页

2024年大庆医学高等专科学校单招职业技能测试.. 40页

2024年天津仁爱学院单招综合素质考试模拟测试.. 39页

2024年天津国土资源和房屋职业学院单招职业倾.. 41页

辅具交互安全性与可靠性提升 36页

2024年太原城市职业技术学院单招职业倾向性测.. 42页

2024年宁夏吴忠市单招职业适应性考试题库完美.. 39页

2024年宁夏职业技术学院单招综合素质考试模拟.. 40页

2024年宁德师范学院单招职业技能考试题库新版.. 40页

2024年宁波大学科学技术学院单招职业适应性考.. 41页

2024年安庆医药高等专科学校单招综合素质考试.. 40页

2024年安徽中医药高等专科学校单招职业倾向性.. 39页

2024年安徽冶金科技职业学院单招职业倾向性考.. 39页

2024年安徽国防科技职业学院单招职业技能考试.. 41页

2025年广州卫生职业技术学院单招职业技能测试.. 64页

美团代运营业务委托合同 6页

新概念青少版2A各单元重点归纳 15页

九年级家长会课件PPT下载(初三2班) 25页

年产3000万片硝苯地平缓释片车间设计 40页