Java第三周总结
方法
重载:同一个类有同名的方法,只要他们的参数列表不一样就可以共存-overload
重写:子类在继承父类过程中对父类已有方法给出新的实现版本-overried
面向对象的四大支柱:
抽象-定义一个类的过程就是抽象过程(数据抽象,行为抽象)
通过抽象可以将数据和操作数据的方法以“对象”的概念绑定在一起
抽象的过程是一个仁者见仁智者见智的过程,同一个对象做抽象可能会得到不同的结果
封装-隐藏一切可隐藏的实现细节 只向外界提供最简单的编程接口
继承-从一个已有的类创建新类的过程,提供信心的教父类(超类、基类)
得到继承信息的教子类(派生类、衍生类),继承是实现代码复用的一种手段
多态-同样的引用类型调用相同的方法但做了不同的事情
实现多态有两个关键步骤:
1.方法重新;
2.对象造型
栈-特点 快、小-临时变量\局部变量
堆-特点 稍慢、大
方法区- 代码、常量
temp子栈上 它保存了堆上的Cat对象的地址
通过temp就可以找到堆上的对应的Cat对象发消息
所以我们通过把对象类型的变量称为对象的引用
java中类型分两大类:
基本类型(8种)和枚举类型
引用类型
同样的类型调用相同的方法(发同样的消息)
但是做了不同的事情-这就是多态(polymorphism)
如何实现多态:
1方法重写-子类继承父类的过程中对弗雷的方法给出自己的实现版本
2对象造型-用父类型的变量来保存子类对象
instanceof:判定对象是不是某种类型
java 有四种访问修饰符
private < default < protected < publice
模板方法模式(GOF设计模式之一)
写一个工具类的要点
所有的方法都是静态方法
构造器私有,不允许调用构造器创建对象
工具类一般不会被继承,所以通常是final
接口是方法声明的集合(只有声明,没有实现)
接口的三关键点:
接口代表能力
接口代表约定
接口代表角色
給按鈕添加監聽器
okButton.addActionListener(listener);
标志性接口-没有方法,但是可卡因让类具备某种能力
final 表常量
final 类不能被继承
final 方法在子类不能被重写
设置一个鼠标监听器
this.addMouseListener(new MouseAdapter() {}