-
super关键字
查看全部 -
final关键字
查看全部 -
继承初始化的顺序
查看全部 -
方法的重写
查看全部 -
成员变量与局部变量重名时,当调用方法时,局部变量有优先级,即优先调用局部变量。
查看全部 -
语法定义:abstract关键字修饰
应用场景:
在某些情况下,某个父类只是知道其子类应该包含怎样的方法,但无法准确知道这些子类如何实现这些方法。
从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类的模板,从而避免了之类设计的随意性。
作用:限制规定子类必须实现某些方法,但不关注实现细节。
使用规则:
abstract定义抽象类
abstract定义抽象方法,只有声明,不需要实现
包含抽象方法的类必需是抽象类
抽象类中可以包含普通的方法,也可以没有抽象方法
抽象类不能直接创建,可以定义引用变量创建
Telphone tel1 = new CellPhone(); // Telphone tel1 引用变量
tel1.call();
tel1.message();
Telphone tel2 = new SmartPhone();
tel2.call();
tel2.message();
抽象方法没有方法体,以分号结束
查看全部 -
1.内部类可用 static 修饰符定义为静态内部类
2.内部类可作为其他类的成员,而且可访问它所在类的成员
3.内部类可以被实例化
查看全部 -
java中成员变量会赋予初始值,成员变量不会赋予初始值。
查看全部 -
局部变量的作用域仅限于定义它的方法;
成员变量的作用域在整个类内部都是可见的。
查看全部 -
1、向上类型转换(隐式/自动类型转换),是小类型到大类型的转换。
2、向下类型转换(强制类型转换),是大类型到小类型的转换。
3、instanceof运算符,来解决引用对象的类型,避免类型转换的安全性问题。
Dog dog = new Dog();
Animal animal = dog;向上类型转换,自动类型转换
Dog dog2 = (Dog)animal; 强制类型转换存在风险
Cat cat = (Cat)animal; dog类型不能转换cat
编译时因为程序员进行强制转换类型,编译器不会报错
但运行时,编译器最终发现类型不匹配,报错
Dog dog = new Dog();
Animal animal = dog;//向上(自动)类型转换(提升)
//判断是否可以进行类型转换
if(animal instanceof Cat){
Cat cat=(Cat)animal;
}else{
System.out.println("无法进行类型转换”);
}
查看全部 -
内部类分为几种: 成员内部类、 静态内部类、 方法内部类、 匿名内部类
查看全部 -
java中this关键字
查看全部 -
访问修饰符查看全部
-
包的使用方法
查看全部 -
java中的包
查看全部
举报