1.java中没有指针,访问对象的成员只能通过"."而没有C++中的"->"
2.四种访问权限从高到低排列: public protect 友好(无修饰符) private
(1)private: 只有在本类中创建该类的对象时,该对象才能访问其private成员(例如当main包含在该类中时,在main里创建的对象)
(2)友好:同一包中的某类中创建另一个类的对象时,该对象可以访问其友好成员;
(3)protect:同一包中的某类中创建另一个类的对象时,该对象可以访问自己的protect成员或某些继承来的protect成员(要求这些继承的protect成员的最早父类和本类在同一个包下):
友好和protect在继承方面的区别:友好类型只能在同一包下被继承,而protect可以在不同包下被继承
(4)public: 任何类的对象都可以访问自己的public成员
3.关于类的继承:
只有一个父类;
重写父类方法时不能降低访问权限
如想访问父类被隐藏的成员变量或被重写的方法可以使用super
4.super
(1)用super调用父类的构造函数:
子类不继承父类的构造函数,所以如果子类要用父类的构造函数则必须在子类的构造函数中用super(参数)调用,如果子类的构造函数中没有用super调用父类的某个构造函数则默认有super(),当父类定义自己构造函数时,JAVA不再提供默认的构造函数,因此为防止子类省略super时出错,在定义父类的构造函数时父类应当包含一个不带参数的构造方法
(2)在子类中用super操作被隐藏的成员:super.x或super.x()