面向对象的小知识
面向对象
基础小知识
1、对象的内存
对象实体存在堆内存,对象的引用变量是普通变量,存储该对象堆内存中的地址。
2、匿名类
只有创建对象,却无引用,如 new XXX()
3、继承
(1)子类中访问父类中的非私有成员变量格式:super.父类中的成员变量
(2)override重写父类的方法,private类无法重写
(3)
this.成员变量和super.成员变量
this.成员方法()和this.成员方法()
4、抽象类
抽象类无法直接创建对象。
抽象类只能被子类继承后,创建子类对象,必须重写父类方法
5、多态
(1)父类引用变量可以指向子类对象,在使用多态后的父类引用变量调用方法时,会调用子类重写后的方法。
(2)父类类型 变量名 = new 子类类型();
可以调用一切父类的方法,子类特有的方法将不能调用。
6、static
(1)static修饰的成员被多个对象共享
(2)静态代码块只执行一次
7、成员内部类
(1)定义格式
class 外部类 {
修饰符 class 内部类 {
//其他代码
}}
(2)访问方式
外部类名.内部类名 变量名 = new 外部类名().new 内部类名();
8、toString方法
(1)返回值为String,该对象的字符串表示
(2)字符串内容就是对象的类型+@+内存地址值
9、自定义异常
Class 异常名 extends Exception{ //或继承RuntimeException
public 异常名(){
}
public 异常名(String message){
super(message);
} }
10、Date
(1)getTime:日期对象转换成对应的时间毫秒值
(2)DateFormat类
//创建日期格式化对象,在获取格式化对象时可以指定风格
DateFormat df= new SimpleDateFormat("yyyy-MM-dd");//对日期进行格式化
(3)
format方法:将Date对象转换成String
parse方法:将String转换成Date
DateFormat df = new SimpleDateFormat(“yyyy年MM月dd日”);
String str = df.format(date);
11、Calendar
(1)方法:
Calendar c = Calendar.getInstance();
//返回当前日历对象
void set(int field,int value)
//设置指定字段的值
Date getTime()
//获取该日历对象转成的日期对象
(2)Calendar类中月份的表示是以0-11代表1-12月,同时西方星期的开始为周日,中国为周一。
12、System类
(1)System的构造方法被private修饰,类方法被static修饰,防止外界创建对方法的修改。
(2)常用方法
currentTimeMillis() 获取当前系统时间原点的毫秒差值
exit(int status):终止java虚拟机,0为正常状态
gc() :运行JVM中的垃圾回收器
13、基本类型包装类
(1)8种基本类型
- 字节型: byte----Byte
- 短整型:short----Short
- 整型: int----Integer
- 长整型: long----Long
- 字符型: char----Character
- 布尔型: boolean----Boolean
- 浮点型: float----Float
- 浮点型: double----Double
(2)将字符串转成基本类型的方法
parseByte/parseShort/parseInt/parseLong/parseFloat/parseDouble/parseBoolean
(3)自动装箱拆箱
- 自动拆箱:对象转成基本数值
- 自动装箱:基本数值转成对象,Integer.valueOf
14、正则表达式
matches(String regex)
split(String regex)