面向对象的特征
来源:互联网 发布:网络运营商资费 编辑:程序博客网 时间:2024/05/07 21:29
关键字:封装,继承,多态,抽象
1.
²
²
²
1)
2)
3)
4)
²
改器和访问器来访问这些成员变量(属性);
1)
This.name = name;
}
2)
Return name;
}
²
)
1) 静态的属性和方法在类加载的时候(对象产生之前)就加载到内存中了,并且全局共享,类的成员变量
或方法不与类的特定实例关联,任何其他类可以直接访问静态成员变量或调用静态方法(不需要类的一个实
例),注意,静态属性(变量)是全局的,即任何一个方法改变了它的值,它的值就全局改变,其他方法使
用它时必须是改变后的值;
2)
3)
} 只执行一次;(静态初始化块是一组当类被JVM的类加载器加载时执行的语句)
4) 静态方法不能直接访问非静态方法,因为静态方法是在类加载的时候执行的,那个时候还没有new对象,
所以必须new一个类的对象才能使用该类下的非静态方法。
2.
²
²
1)
2)
²
²
²
²
1)
去调用父类),所以如果我们重新在父类中写了一个有参的构造方法,把父类的默认构造方法顶掉了,必须
在子类构造方法中显式的添加对应参数的父类构造方法或者在父类中再添加一个无参的构造方法;
2)
²
来(要执行父类构造方法中的代码),最后初始化子类(所以如果父类有输出,则在子类输出要显示出来)
²
类的访问修饰符(不能重写父类的构造方法)
²
1)
2)
3)
²
的内存地址,如果想用其他功能必须对toString()进行重写;
3.
²
²
1)
2)
3)
如:People
里的方法(若重写则调用对应的子类)
4)
如:Man
5)
形式:引用 instanceof 类名 如:if(people instanceof Man){
}这个例子检测了引用people是否是指向Man类的对象,如果返回为true则将people强制转换为Man类的引用并
赋给a
6)
7)
该引用只能调用父类中定义的方法和变量;
如果子类中重写了父类中的一个方法,那么在调用这个方法的时候,将会调用子类中的这个方法;(动态连
接、动态调用);
变量不能被重写(覆盖),“重写”的概念只针对方法,如果在子类中”重写“了父类中的变量,那么在编
译时会报错
²
²
父类类型的引用可以调用父类中定义的所有属性和方法,而对于子类中定义而父类中没有的方法,它是无可
奈何的;
同时,父类中的一个方法只有在在父类中定义而在子类中没有重写的情况下,才可以被父类类型的引用调用
;
对于父类中定义的方法,如果子类中重写了该方法,那么父类类型的引用将会调用子类中的这个方法,这就
是动态连接。(程序执行时,JVM会沿着继承树层次向下找,若发现子类中重写了父类的该方法,就调用子类
中的被重写的方法,这就是动态绑定)
²
1)多态参数:就是当方法的某个形式参数是一个引用的时候,与该引用兼容(子类)的任何对象都可以传递
给方法,从而允许方法接受不同数据类型的形式参数。
如:
2)异构集合(使用数组):不同对象的集合称为异构集合(多态最常见的应用是创建一个不是同一类型,但
是有共同父类的数据集合)。
如:People [] p = new People[20];这个数组可以存储任何People子类的对象
4.
²
²
²
1) 抽象类不能通过new关键则来产生对象
2)
3)
4)
²
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 面向对象的特征
- 第一章 初识Java
- 第三章 程序流程控制
- 第四章;类、对象和包
- 第五章 对象的行为(方法)
- 第六章 数组
- 面向对象的特征
- 苹果Swift语言中文教程(三) 字符串和字符
- 苹果Swift语言中文教程(四) 集合类型
- JS实现自定义右键菜单
- 苹果Swift语言中文教程(五)控制流
- JS实现鼠标右键菜单
- 苹果Swift语言中文教程(六)函数
- 苹果Swift语言中文教程(七)闭包
- 苹果Swift语言中文教程(八) 枚举类型