类和对象——继承

继承

 extends

子类拥有父类的所有属性和方法,提高代码复用性。

java只支持单继承不支持多继承。

 

重写

返回值类型、方法名、参数类型及个数都要与父类继承的方法相同,这才叫方法的重写。

重写有有以下两个限制

  • 子类方法的访问权限必须大于等于父类方法;
  • 子类方法的返回类型必须是父类方法返回类型或为其子类型。

使用 @Override 注解

 

重载:

存在于同一个类中,指一个方法与已经存在的方法名称上相同,但是参数类型、个数、顺序至少有一个不同、

重写和重载的区别
1.重写必须继承,重载不用。
2.重写的方法名,参数数目相同,参数类型兼容,重载的方法名相同,参数列表不同。
3.重写的方法修饰符大于等于父类的方法,重载和修饰符无关。(即子类权限要大于父类)
4.重写不可以抛出父类没有抛出的一般异常,可以抛出运行时异常。

 

final的使用

final 最终的,不可修改 可修饰
final 类 该类不允许被继承
final 方法 该方法不允许被覆盖或者重写
final 属性 该类的属性不会进行隐式的初始化,类的初始化属性必须有值或在构造方法中赋值,但只能选其一
final 变量 则该变量只能赋一次值,变为常量。

 

this和super用法总结:

1.this是自身的一个对象,代表对象本身,可理解为指向对象的一个指针


this的用法在java中大体可以分为三种:
a.普通的直接引用,this相当于指向当前对象本身
b.形参与成员名重名,用this来加以区分
c.引用构造函数


2.super可以理解为指向自己超(父)类对象的一个指针,而这个超累指的是离自己最近的一个父类


super也有三种直接用法
a.普通的直接引用,super相当于只想当前对象的父类,可以用super.XX来引用父类的成员
b.子类的成员变量或方法与父类中的成员变量或方法名重名
c.引用构造函数
super(参数):参数也可能为空,应该为构造函数的第一条语句,调用父类的构造函数
this(参数):在构造函数的第一条语句,调用本类中另一种形式的构造函数。

 

 

equals:

  • 对于基本类型,== 判断两个值是否相等,基本类型没有 equals() 方法。
  • 对于引用类型,== 判断两个变量是否引用同一个对象,而 equals() 判断引用的对象是否等价
Integer x = new Integer(1);
Integer y = new Integer(1);
System.out.println(x.equals(y)); // true
System.out.println(x == y);      // false

 

toString():

 

posted @ 2018-10-15 15:56  StingLon  阅读(177)  评论(0)    收藏  举报