6.6总结:多态,抽象,包和权限

来源:互联网 发布:淘宝店铺排名怎么看 编辑:程序博客网 时间:2024/05/20 18:50

昨晚泡芝麻糊做夜宵,不了水冲到触摸板上了,现在触摸板上有两个键失灵,ORZ...

继续回忆,总结,加深印象。。。

一、对象的转型:假如有两个class,其中class Student extends Person

向上转型——将子类的对象赋值给父类的引用:
Student s = new Student();

Person p = s;

或者直接Person p = new Student();

向下转型——将父类的对象赋值给子类的引用:

Student s1 = new Student();

Person p = s1;

Student s2 = (Student)p;    //注意,向下转型,必须先做向上转型,才能做向下转型,所以它必须含有以上三步,缺一不可

//错误的向下转型实例:

Person p = new Person();

Student s = (Student)p;

二、一个引用能够调用哪些成员(变量和函数),取决于这个引用的类型

三、一个引用调用的是哪一个方法,取决于这个引用所指向的对象

四、因为上面三点,主要是由于第三点的关系,所以java产生了多态的概念。多态是在程序运行时的现象,而非编译过程中产生的。

五、抽象函数:只有函数的定义,没有函数体的函数被称为抽象函数。eg:

abstract void fun();

六、抽象类:用abstract定义的类被称为抽象类。

七、抽象类不能够生成对象,只能被继承,然后其中的抽象方法需要被override。

八、如果一个类当中包含有抽象方法,那么这个类必须被声明为抽象类。

九、如果一个类当中没有抽象方法,那么这个类也可以被声明为抽象类。

十、虽然1、抽象类不能产生对象2、构造函数用户生成类的对象,但是抽象类还是有构造函数。因为抽象类可以被继承,而子类的构造函数,在最默认初始的情况下也会通过super()调用父类的构造函数

十一、抽象的方法,不能使用private修饰

十二、一个类的全名应该是“包名”+“类名”

十三、4个访问权限:public private default protected

public:不同包间也可以访问;

private:只有本类可以访问;

default:同一个包中可以访问;

 protected:1、protected有和default相同的访问限制;2、表示受保护权限,体现在继承,即子类可以访问父类受保护成员,子类可以跨包访问父类protected修饰的方法和属性。

十四、package import

十五、带包的java文件编译指令:javac -d . *.java  javac 生成包路径选择 当前目录 java文件