---恢复内容开始---
成员变量和局部变量:
成员变量:menber variable,在类中定义,描述对象将要有什么
作用域:整个类的内部
有初始值
局部变量:local variable,在方法中定义,储存临时数据
作用域:只能在方法内部使用
无初始值
局部变量和成员变量同名时,局部变量具有优先权
构造方法:
名称与类名相同,没有返回值,static省略。
instance variables(non-static) and class variables(静态成员变量):
静态成员变量可以通过类名.变量名、创建对象—>对象.变量名的形式访问,被类的所有对象共享。
instance method and static method(静态方法):
可以通过类名.方法名、创建对象—>对象.方法名调用静态方法。
关于方法访问变量:
若要在静态方法中访问非静态变量,则可以在静态方法中创建对象,采取对象.非静态成员变量名的方式访问;
在普通成员方法(instance method)中可以直接访问同类的静态成员变量和非静态成员变量;
静态方法中可以直接访问静态成员变量;
关于方法调用方法:
静态方法不能直接调用非静态方法,可以在静态方法中创建对象,采取对象.非静态方法的方式调用;
静态方法可以直接调用静态方法;
非静态方法可以直接调用静态方法。
关于模块的执行:
{...}初始化模块,static{...}静态初始化模块,执行先后顺序:静态初始化模块—>初始化模块—>构造方法。
静态初始化模块只会在类加载时执行一次,其后的创建对象操作不再执行。静态变量由静态初始化模块赋值。
关于内部类:
内部类分为:成员内部类,静态内部类,方法内部类,匿名内部类;
成员内部类:如果内部类和外部类有同名变量,在内部类里,内部类默认访问自己的变量;若要访问外部类的变量,
则可以采取外部类名.this.变量名。
在main方法中创建内部类的对象时,需要先创建外部类的对象x,再采取Inner inn=x.new Inner();的形式。
静态内部类:静态内部类可以直接访问外部类的静态成员变量,但是不能直接访问非静态成员变量。若要访问非静态成员变量,则
采取new.外部类名().成员变量名;
如果静态内部类和外部类有同名变量,可以通过类名.变量名访问外部类同名变量,否则,可直接访问;
创建内部类的对象时,不需要外部类的辅助,可以直接创建。
方法内部类:方法内部类只能在外部类的方法以内使用,因此没有访问控制符和static修饰符。
方法内部类结束后,创建内部类对象,调用相应的方法。
多态:父类对子类的引用不能调用子类独有的方法;
抽象类:抽象方法包含在抽象类里
---恢复内容结束---
成员变量和局部变量:
成员变量:menber variable,在类中定义,描述对象将要有什么
作用域:整个类的内部
有初始值
局部变量:local variable,在方法中定义,储存临时数据
作用域:只能在方法内部使用
无初始值
局部变量和成员变量同名时,局部变量具有优先权
构造方法:
名称与类名相同,没有返回值,static省略。
instance variables(non-static) and class variables(静态成员变量):
静态成员变量可以通过类名.变量名、创建对象—>对象.变量名的形式访问,被类的所有对象共享。
instance method and static method(静态方法):
可以通过类名.方法名、创建对象—>对象.方法名调用静态方法。
关于方法访问变量:
若要在静态方法中访问非静态变量,则可以在静态方法中创建对象,采取对象.非静态成员变量名的方式访问;
在普通成员方法(instance method)中可以直接访问同类的静态成员变量和非静态成员变量;
静态方法中可以直接访问静态成员变量;
关于方法调用方法:
静态方法不能直接调用非静态方法,可以在静态方法中创建对象,采取对象.非静态方法的方式调用;
静态方法可以直接调用静态方法;
非静态方法可以直接调用静态方法。
关于模块的执行:
{...}初始化模块,static{...}静态初始化模块,执行先后顺序:静态初始化模块—>初始化模块—>构造方法。
静态初始化模块只会在类加载时执行一次,其后的创建对象操作不再执行。静态变量由静态初始化模块赋值。
关于内部类:
内部类分为:成员内部类,静态内部类,方法内部类,匿名内部类;
成员内部类:如果内部类和外部类有同名变量,在内部类里,内部类默认访问自己的变量;若要访问外部类的变量,
则可以采取外部类名.this.变量名。
在main方法中创建内部类的对象时,需要先创建外部类的对象x,再采取Inner inn=x.new Inner();的形式。
静态内部类:静态内部类可以直接访问外部类的静态成员变量,但是不能直接访问非静态成员变量。若要访问非静态成员变量,则
采取new.外部类名().成员变量名;
如果静态内部类和外部类有同名变量,可以通过类名.变量名访问外部类同名变量,否则,可直接访问;
创建内部类的对象时,不需要外部类的辅助,可以直接创建。
方法内部类:方法内部类只能在外部类的方法以内使用,因此没有访问控制符和static修饰符。
方法内部类结束后,创建内部类对象,调用相应的方法。
多态:父类对子类的引用不能调用子类独有的方法,子类不继承父类的构造方法,子类的构造方法会调用父类的构造方法//super();
抽象类:抽象方法包含在抽象类里,抽象类中必须存在抽象方法
关于基本数据类型和字符串的转换:
基本数据类型转换为字符串:
1. 使用包装类的 toString() 方法,包装类.toString(parameter);
2. 使用String类的 valueOf() 方法,String.valueOf(parameter);
3. 用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串。
字符串转换为基本数据类型:
1. 调用包装类的 parseXxx 静态方法,包装类.paeseXxx(parameter);
2. 调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱。包装类.valueOf(parameter);