一、抽象类
- Number类:是数值包装类、BigInteger以及BigDecimal类的抽象父类
- Calendar类:是GregorianCalendar类的抽象父类
- 方法:
get(int field)
|
返回一个给定日历域的值
|
set(int field,int value)
|
将给定的日历设为指定值
|
set(int year,int month,int dayOfMonth)
|
设定日历的年、月(月份从
0
开始,
0
表示
1
月)、日
|
getActualMaximum(int field)
|
返回指定的日历域可以有的最大值
|
add(int field,int amount)
|
对指定的日历域增减给定数目的时间
|
getTime()
|
返回代表该日历的时间值的对应
Date
对象
|
setTime(Date data)
|
使用指定的
Date
对象来设定该日历的时间
|
- 域常量
YEAR
|
日历的年份
|
MONTH
|
日历的月份,
0
表示一月
|
DATE
|
日历的天
|
HOUR
|
日历的小时(
12
小时)
|
HOUT_OF_DAY
|
日历的小时(
24
小时)
|
MINUTE
|
日历的分钟
|
SECOND
|
日历的秒
|
DAY_OF_WEEK
|
一周的天数,
1
是星期天
|
DAY_OF_MONTH
|
一个月的天数
|
DAY_OF_YEAR
|
当前年的天数,
1
是该年的第一天
|
WEEK_OF_MONTH
|
当前月的周数,
1
是该月的第一周
|
WEEK_OF_YEAR
|
当前年的周数,
1
是该年的第一周
|
AM_PM
|
上午
or
下午(
0
表示上午,
1
表示下午)
|
二、接口
- 接口、抽象类都不能创建实例
- 接口的所有数据域都是public static final,所有方法都是public abstract;没有构造方法
- Comparable接口
- Byte,Short,Integer,Long,Float,Double,Character,BigInteger,BigDecimal,String,Date类都实现了Comparable接口
- 实现了Comparable接口的类对象可用java.util.Arrays.sort(Object[])方法对其进行排序
- Cloneable接口
- 这个接口是空的;实现了该接口的类标记为可克隆的
- 标记接口:空的接口
- 若类实现了Cloneable接口,该类必须覆盖Object类中的clone()方法
- native关键字:修饰方法时表示该方法不是由java实现的
三、类
- Rational类(要自己定义的,不用复习)
- 用于表示有理数
- 方法:
long numerator
|
有理数的分子
|
long denominator
|
有理数的分母
|
Rational()
|
使用分子为
0
,分母为
1
创建有理数
|
Rational(long numerator,long denominator)
|
使用指定分子、分母创建有理数
|
getNumberator()
|
返回分子
|
getDenominator()
|
返回分母
|
add(Rational secondRational)
|
两个有理数相加
|
subtract(Rational secondRational)
|
两个有理数相减
|
multiply(Rational secondRational)
|
两个有理数相乘
|
divide(Rational secondRational)
|
两个有理数相除
|
toString()
|
以
“
分子
/
分母
”
形式返回,若分母为
1
,只返回分子
|
-gcd(long n,long d)
|
返回除数
n
和
d
的最大公约数
|
- 类的设计原则
- 应该提供一个无参的构造(当有子类时)
- 禁止创建对象:构造声明为private