一.面向对象(OOP):
1.对象:对象里有两个内容,分别为属性和方法,即静态属性和动态属性。
2.OOP的特征:
1. 封装
2. 继承
3. 多态
3. 一般开发中,开发者首先考虑需要创建几个类,然后再考虑有哪些功能,这些功能由谁来实现。
4. 封装:
1. 构造函数:
1. 特点:
1. 函数名与类名相同。
2. 不要定义返回值类型,也不会有return。
2. 作用:给对象进行初始化。
3. 如果没有定义构造方法,系统会为自动生成一个构造方法。
4. 一旦有了有参的构造方法,系统就不会自动生成无参的构造方法,所以定义了有参的构造方法需要定义个无参的构造方法。
5. 一个成员变量只有在拥有setget方法后才能成为属性,否则就只能叫做字段。
6. 通常情况下,一个类一般写两个构造方法,一个为无参构造方法,一个为有全部属性的构造方法。
7. 功能:构造对象。
8. this:
1. this指代构造函数
2. this指代当前对象实例
3. 当方法方法内需要调用构造方法时,就需要使用this(),但这一句必须写在第一句位置。
二.String:
1.String st = “”; //这种方法创建的字符串,如果字符串内容相同,则他们地址相同。
ex:
String st = "This is test";
String st1 = "This is test";
if(st == st1){
System.out.println("地址相同");
}
else{
System.out.println("地址不相同");
}
//结果输出地址相同
2.匹配字符串内容(equals):
ex:
String st = "This is test";
String st1 = "This is test";
if(st.equals(st1)){
System.out.println("内容相同");
}
else{
System.out.println("内容不相同");
}
//输出内容相同,但是要注意equals的对象,本代码中的st最好是一个内容固定或者确定有内容的字符串对象,否则会出现空指针异常。
3.字符串截取(charAt()):
ex:
String message = "I'm good";
System.out.println(charAt(message,2));
// 程序会输出m
4.正则表达式(matches):
ex:
String username = "test";
if(username.matches("\\w{6,18}")){ // \\w{6,18} 表示6位至18位的字母数字和下划线
System.out.println("匹配成功");
}
else{
System.out.println("匹配失败");
}
//程序最后结果是匹配失败