面向对象进阶
1.static
在main中调用类名的方法时,其方法的对象可能是多个对象的共同对象
比如说创建了s1,s2两个学生对象,他们有共同的老师t,调用方法时老师是同一个
但如果不加static,t就需要被定义两次
所以要用static
被static修饰的变量叫做 静态变量
2.继承extends
啥时候用继承?
当类与类之间,存在共性的的内容,并满足子类是父类的一种,就可以用继承
3.多态
创建完对象之后用:register(s) register(t) register(admin)调用即可
4.包
5.final
例子:
class Fu{
public final void show(){
……
}
}
6.权限修饰符
(protected如同私生子)
7.抽象类
使用abstract后,必须重写
继承抽象类的解决方案:
- 重写里面所有的方法
- 其子类也需要时抽象的,子类重写所有方法
8.接口
9.匿名内部类
比如有个方法
public static void method(Animal a){
a.eat;
}
按之前的方法,首先要创建一个Dog类,再在测试类中创建一个新的dog对象,再method(d)
但是如果只是用一次的话,中间的过程太过麻烦,所以可以用匿名内部类
method(
new Animal() {
public void eat() {
System.out.println(“狗吃骨头”);
}
}
);
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 西东温的小世界!