07月14日 JavaOOP复习笔记

static 静态的

    可以用来声明类,属性,方法和代码块

static属性:类属性 该类所有的对象共享的一个变量
非静态属性:成员属性 该类的每一个对象都独立的有一个变量

static方法:类方法
非static方法:成员方法
调用成员方法的时候,根对象本身的类型[new的类型]有关系
在调用类方法的时候,只跟变量的类型有关系

static属性和static方法可以通过对象来调用
但通常情况下都直接通过类名调用

在静态方法中不能够直接调用非静态的属性和方法

static类:一般用来定义内部类[嵌套类]

static代码块
static{

}

===========================================================================

程序的执行顺序

1.加载类,将class文件加载到JVM的内存中[开辟类的内存空间]
加载的时候,所有的static的属性和代码块都会按顺序执行

2.开始执行主函数
所有的方法[static方法和成员方法]必须要调用才会执行

3.创建某个类的对象[开辟对象的内存]
开辟对象的内存空间的时候,所有的成员属性和非静态代码块会按顺序执行。
07月14日 JavaOOP复习笔记_第1张图片
理解参考运行实例

============================================================================

public class A{
    public A(){
        System.out.println("A");
    }
}

public class B extends A{
    public B(){
        System.out.println("B");
    }
}

public class C{
    A a = new A();
    static B b = new B();
	
	public C(){
         System.out.println("C");
  	}

	public static void change(){
		B b = new B();
    }
	public static void main(String[] args){
        C.change();
    }
}

执行结果:ABAB

============================================================================

Java中的常用类
String StringBuffer StringBuilder

1.字符串的构造方式
String s = “ABCD”;
String s = new String(“ABCD”);
//字符数组转换成字符串
String s = new String(char[]);
String s = new String(char[],startIndex,count);

//字节数组转换成字符串
String s = new String(byte[]);
String s = new String(byte[],charset);
String s = new String(byte[],startIndex,count,charset);

字符集:
1.所有的字符都是用数字表示的
2.字符用哪个数字表示是有不同的标准的
3.这些标准就称作字符集
4.常见的字符集
ISO-8859-1 ~ ISO-8859-14 只识别半角字符
半角字符:ABC abc 123
全角字符: ABCabc 123
GBK 简体中文 字符集 [支持中文,英文和数字]
GB2312 GB18030

UTF-8 基于Unicode编码的字符集

2.字符串的常用方法
字符串转换成字符数组
toCharArray();
字符串转换成字节数组
getBytes();
getBytes(charset);

查找
    charAt(index);  根据下标取出一个字符
    indexOf(s);     查找s在字符串中第一次出现的下标位置
    lastIndesOf(s); 查找s在字符串中最后一次出现的下标位置
    contains(s);    是否包含指定的字符串

匹配
    equals(s)  字符串是否以指定的字符串"相等"
    equalsIgnoreCase(s)字符串是否以指定的字符串"相等" 忽略大小写
    match(s)    字符串是否以指定的字符串匹配

替换
    replace(oldString,newString)    替换指定的字符串
    replaceAll(oldString,newString)替换指定的字符串
    replaceFirst(oldString,newString) 替换指定的字符串,只替换第一次出现的

截取
    subString(start)
    subString(start,end);


切割
    split("标记")


字符串长度:包含多少个字符
    length()

你可能感兴趣的:(Java,OOP学习)