[JAVA基础汇总]第十四章 抽象类和接口
来源:互联网 发布:筑业计价软件 编辑:程序博客网 时间:2024/04/29 15:30
---------------------------------
= 引用复制,指向相同的对象
clone 产生新的对象
数组是对象
==相同对象??????????
equal 相同内容?????????
抽象类出了包含常量和抽象方法外,还可以包含变量和具体方法
--------------------------------
第十四章 抽象类和接口
1.抽象类:public abstract class 类名{
public abstract double getArea();//抽象方法}
-可以有数据,以及方法的实现(抽象方法没有实现)
-不能使用new操作符创建实例,抽象方法只有定义没有实现。一个包含抽象方法的类必须定义为抽象类。
-抽象类的构造方法定义为protected,因为只被子类使用
-抽象方法非静态,抽象方法不能包含在非抽象类中,所以必须实现所有抽象方法
-子类的父类是具体,子类可以是抽象
-子类可以覆盖父类方法并且定义为abstract(少见)
-抽象类不可以用new创建一个实例,但是可以作为数据类型
2.接口:指明多个对象的共同行为 修饰符 interface 接口名{ 常量声明;方法签名;}
-只包含常量和抽象方法。
-不能使用new操作符创建接口的实例
-可以用接口作为引用变量的数据类型或类型转换的结果??????
--使用implements关键字 让对象的类来实现这个接口。类和接口之间的关系叫接口继承
-当一个类实现接口时,该类实现了定义在接口中的所有带确切签名和返回的类型的方法。
-接口所有数据域都为public final static 所有方法为public abstract,所以可以省略。接口内定义的常量可以使用 接口名.常量名 来访问。
3.ActionListener接口:
--”按钮就是动作来源的源对象“ “需要创建一个对象来处理按钮上的动作事件---》这个对象叫 监听器”
--监听器两个条件:1.必须是ActionListener(事件监听器)接口的一个实例。定义了所有动作监听器共有的动作
2.监听器必须使用方法 source.addActionListener(listener)注册给源对象
--public void actionPerformed(ActionEvent e){ 处理}
-接口可以继承多个接口, 可以有多个接口,逗号分隔
4.带空体的接口称为 标记接口,即不包括常量也不包括方法,用来表示一个类拥有某些特定的属性。
5.cloneable接口,需要使用时看书,浅复制,深复制。
6.接口与抽象类:
变量:抽象类无限制,接口变量必须是public static final
构造方法:子类通过构造方法链调用构造方法,抽象类不能用new操作符实例化,没有构造方法。接口不能用new操作符实例化。
方法:抽象类无限制,接口所有方法必须是公共的抽象实例方法
===设计指南:详细描述父子关系的 强是关系(strong is-a relationship)用类建模使用抽象类继承
弱是关系(weak is-a relationship)也称为类属关系(is-kind-of) 表明对象拥有某种属性,可以用接口来建模
7.包装类: 数值包装类有一个有用的静态方法valueOf(String s) 该方法创建一个新对象,并将它初始化为制定字符串表示的值。
Interger类中的parseInt方法 将一个数值字符串转换为一个int值 默认以10为基数,或者指定 Interger.parseInt("11",2) returns 3;
8.装箱:将基本类型转换为包装类对象的过程 Integer intObject=2 自动装箱。
开箱:相反
9.大整数可以使用 java.math包,BigInteger类和BigDecimal类
10.Rational实例不想看了,有需要再研究。我时间有限需要把时间花在最正确的事情上!
- [JAVA基础汇总]第十四章 抽象类和接口
- Java语言基础:抽象类和接口
- java基础---->接口和抽象类
- Java基础:抽象类和接口
- java基础------抽象类和接口
- 《java基础》抽象类和接口
- Java基础---抽象类和接口
- Java基础:接口和抽象类
- Java基础(9):抽象类和接口
- java基础抽象类和接口区别
- java基础 抽象类和接口
- java基础之抽象类和接口
- java基础之抽象类和接口
- java基础之抽象类和接口
- java-基础-接口和抽象类
- JAVA基础--接口和抽象类
- Java基础--接口和抽象类
- java基础之抽象类和接口
- Java 自学自军记 day26
- 浅谈java定时任务:TimerTask
- 使用Log4jdbc-log4j2监听MyBatis中运行的SQL和Connection
- FFT——学习笔记
- FloatingActionButton的滚动隐藏和弹出特效的实现
- [JAVA基础汇总]第十四章 抽象类和接口
- 圆角菜单的制作
- 死锁的产生及检测
- Matlab —— 将m文件打包成jar包 (二)、使用jar包
- ELK环境搭建
- OpenCV中GC方法求视差图的实现
- LeetCode022 Generate Parentheses
- ACM skiing (Java)
- schema