多态:
父类引用变量指向子类对象
父类类型 变量名 =new 子类类型();
多态的前提
1.子父类继承关系(实现关系)
2.父类引用指向子类对象
3.方法重写
多态成员特点:
成员变量,编译看左边,运行也是看左边
成员方法,编译看左边,运行看右边
构造方法,编译看左边,运行看左边
向上转型和向下转型
向上转型(小转大)
多态本身就是一个向上转型
向下转型(大转小)
直接创建的父类对象,不能向下转型
20190313号
包:存在电脑中的文件夹,存放类文件
分包管理
包的声明格式
package 包名。包名…
注意:声明包的语句,必须放在有效程序的第一行
包的特点:
1.可以有多层
2.不同包下的文件名可以重复
3.包的声明必须在第一行
包之间的访问
1.导包:import
2.写全路径类名
lang包下的包不需要导包
object:超类
boolean equals(object obj)
class getclass()获取字节码文件
int hashcode()对象的哈希码值
string tostring()该对象的字符串表现形式
权限修饰符:
public:
protected:
default:
private:
1.本类中,
2.同一个包下(与子父类无关),除了private,其他都有可以访问
3.不同包下非子父类
使用规范:
1.使用public修饰类,一个java文件中只能有一个类
2.以后所有的成员变量用private修饰
3.以后所有的成员方法,使用public修饰
4.构造方法使用bublic修饰,除非你不想用这个类来创建对象就用private修饰
内部类 安卓手机开发使用
将类写在其他类中,这个类称为内部类,其他类叫做外部类
class 车{
class 发动机{
}
}
成员内部类,类中成员位置,
class 外部类{
修饰符 class 内部类
成员内部类,类中成员位置,内部类中可以直接访问到,包括私有的
private修饰内部类,其他类无法访问
static修饰内部类,不需要创建外部类对象
abstract可以修饰内部类
局部内部类:外部类方法中局部位置,与局部变量相似
class 外部类{
修饰符 返回值类型 方法名(){
class 内部类{
}
}
3.匿名内部类:
作用:创建某个类型子类对象的快捷方式
看作没有名字的局部内部类
格式:
new 父类或者接口{
//方法重写
}