杰瑞教育9

格式一般是属性、构造函数、set get方法。

【继承、方法重写、多态】

使用继承

  ①编写父类

  ②编写子类,继承父类。

继承关键字:extends。只能继承一个父类(单继承)。

 

protected只有子类可以继承。

 

子类访问父类成员:使用super关键字。super代表父类对象。

 

集成后的初始化顺序:

  ①父类属性

  ②父类构造方法

  ③子类属性

  ④子类构造方法

 

有些父类成员不能继承

  ①子类不能访问父类private成员(属性和方法)。

  ②子类与父类不在同包,使用默认访问权限的成员。

  ③构造方法(只能调用,不能继承)。

 

调用父类的有参构造super(name,sex,age);如不写这句话默认调用父类的无参构造,想调用父类的有参构造则必须写super(name,sex,age);这句。

 

访问修饰符protected

  ①可以修饰属性和方法

  ②本类、同包、子类可以访问

 

访问修饰符      本类  同包  子类  其他

private          √

默认(friendly) √    √

protected        √    √    √

public           √    √    √    √

 

方法重写的规则

  ①在继承关系的子类中

  ②重写的方法名、参数、返回值类型必须与父类相同

  ③私有方法不能继承因而也无法重写

 

           位置  方法名  参数列表  返回值  访问修饰符

方法重写   子类   相同    相同       相同   不能比父类更严格

方法重载   同类   相同    不同       无关    无关

 

方法重写的意义在于多态。

 

@Override在重写的方法上可有可无,但在不是重写的方法上加@Override是会报错的。

 

父类引用,子类实现。

 

何时使用继承:

①继承与真实世界类似,符合is-a关系的设计使用继承。

②继承是代码重用的一中方式,将子类都有的属性和行为放到父类中。

 

Java中也使用抽象类,限制实例化。

public  abstract  class  Instrument(){

一个类抽象了就不能被实例化了。

 

抽象类的特点:

①不能被实例化

 

 

方法前加abstract后成为抽象方法,格式为:public abstract void play();

一个类中有一个抽象方法,则该类应该变成抽象类。

一个抽象类中可以有抽象方法,也可以没有抽象方法。

 

abstract也可用于方法----抽象方法

 ①抽象方法没有方法体。

 ②抽象方法必须在抽象类里。

 ③抽象方法必须在子类中被实现(抽象方法在子类里必须被重写),除非子类是抽象类。

 

抽象的意义在于不被实例化。

 

final方法

 public final class play extends Violin(){

}

类前面有final修饰时,代表play是终极类,不能再被其他类继承了。

 

当一个属性前面加上final时,就变成了一个常量,即不可改变,如:public final int age=10;表示age的值为10,不可修改。

 

类加final后不能被继承,方法加final后不能被重写,属性加final后成为常量,不能被修改。抽象正好相反。

 

static可以用来修饰属性、方法、类和代码块。

static修饰的属性和方法称为类属性(类变量)、类方法。

 

public class StaticTest{

pulblic static int length;

public static void main(String[] args){

     StaticTest.length=10;

}

}

main方法中不需要实例化,因为定义length时加了static,成为了类属性(也叫静态属性)。

 

通常把static与final结合使用(静态常量)。

转载于:https://www.cnblogs.com/rongqingye/p/5759589.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值