构造器
构造器(构造方法)是一种特殊的方法
作用: 为对象初始化信息,为对象赋值,他不是用来创建对象的,只有new可以创建对象
他的调用只能与new一起使用
构造器名称必须与类名同名
构造器可以重载
如果代码中没有编写构造器,编译器会自动提供一个空构造器
如果已经定义构造器,编译器不会再提供任何构造器
this
this关键字指代new的对象
作用:
1.在构造器首行使用this(实参),来调用本类中的其他构造器
2.区分成员与局部变量同名问题 默认就近原则 通过this 调用成员
成员发那个法中的this,more指代调用方法的对象
this()不能再static中使用s
static
static是一种成员修饰符,用来修饰成员内容,不可以修饰局部
用static来修饰的成员变量叫做静态变量(类变量),修饰的方法叫做静态方法(类方法)
static所修饰的使用:
1.对象.静态变量名|方法名
2.类名.静态变量名|方法名
成员是属于对象的,跟随对象使用;静态~是属于类的,跟随类名使用
静态内容是当前类中所有对象共享的,成员内容是属于每一个对象的,有几个对象就存在几份
在静态方法中不能使用this
block
语句块中的内容自成作用域
分为普通语句块,静态语句块和构造块
普通语句块:{}定义在方法中
构造块:{}定义在类中方法外
静态块:static{}定义在类中方法外
编译时的执行顺序:静态块--->main方法--->构造块--->构造器
构造块中的代码先于构造器执行,因为在编译期间,构造块中的代码会被编译到构造器中执行,放在构造方法内部的语句之前
如果存在多个构造块,从上到下,依次执行
debug
用来调试代码
作用:1.追踪程序执行流程
2.定位异常出现的位置
3.方便观察变量的变化情况
4.通过追踪程序的执行流程学习一些第三方框架源码
1.设置断点(断点后执行需要人为手动控制)
2.debug模式运行
3.快捷键F7与F8
都是进入下一步的意思,不同之处:
1)F8下一步如果是方法的应用,会直接跳过,不会进入方法内部执行
2)F7下一步如果是方法,会跟随进入(仅限于自定义方法)
alt+shift+F7:强制进入 如果下一步是jdk方法的电泳,也跟随执行
shift+F8:跳出到方法调用的下一步