- 接口,多态,String,包装类,正则表达式,二进制的使用规则
- 接口:
1,接口是一个引用数据类型,interface定义,只能包括常量int NUM=5和抽象方法 abstract 。
2,接口不能被实例化。不能new对象。所以需要被实现或者继承,implement ,extends。然后子类中需要重写所有的抽象方法 abstract
3,一个类可以继承1个超类extends,实现implement多个接口,用“,”隔开 。
4, 接口之间可以相互继承
- 多态:
1,向上造型/自动类型转换, 超类 名字=new 子类() ;
2,强制类型转换:两种方式:(1)引用类型对指向的对象,就是该类型。
如People s=new Student(); Student s1=(Student ) s ;
(2) 引用类型的对象,继承了或者接口了该对象。
注意强制转换类型必须做判断是否该类 instanceof
if(s instanceof EnemyScore){
EnemyScore es=(EnemyScore) s;
score +=es.getScore();
}
- String字符串类型
常见用法
length() 长度
trim()去除两边的空白
toUpperCase() 转为大写
toLowerCase() 转为小写
startsWith/endsWith:判断boolean 类型,判断是否以当前字符开始,判断是否当前字符为结束
indexOf()/lastindexOf():当前字符出现第1次的位置;当前字符出现最后1次的位置
chartAt() :第几个出现的字符是
subString:截取
- StringBuilder:
- StringBuilder是不可变对象,内部是一个可变的char数组。对应String 是创建新对象的。
常见方法:增加append内容(),删除delete(),replaceupdate(),插入insert()
- getter、setter(快捷键):变量的初始化,以及return 当前的name,age
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
- 正则表达式
(1)描述字符串内容格式,匹配格式内容是否满足要求
//[abc]:这个字符可以是a或b或c // [a-z]:表示任意一个小写字母 // [a-zA-Z]:表示任意一个字母 // [a-zA-Z0-9]:表示任意一个字母数字 // [a-zA-Z0-9_]:表示任意一个数字字母下划线 // [^abc]:该字符只要不是a或b或c
(2) String 支持与正则表达式的方法
matches():boolean matches(String regex) :匹配
replaceAll(): 替换,()两个参数,把 AA 替换为BB
split():拆分,以什么为界限进行拆分
- Object类:是一个鼻祖
所有类直接或间接继承了Object,主要注意重写方法toString()。
equals 是比较两者的地址,没有意义,所有一样需要重写equals
- 包装类
8个的基本类型的包装类。使得基本类型可以用于面向对象开发。Integer。。。。
主要自动装箱,以及自动拆箱。
- 二进制
二进制的基2,权1,2,4,8,16.。
以及转化为10进制的规则方法:对应的数字1*对应的权。然后相加数。
对应8进制,16进制