- class Person{
- private String name;
- private int age;
- //1、构造代码块
- {
- cry();
- }
- public Person(){
- System.out.println("name="+name+",age="+age);
- }
- //2、调用的方法
- public void cry(){
- System.out.println("cry......");
- }
- }
- public class GetPerson{
- public static void main(String[] args){
- Person per1 = new Person();
- }
- }
- 请问下:上面程序运行的时候,主函数创建对象new Person()前会先运行构造代码块,构造代码块中调用cry()方法。请问构造代码块在创建对象前就运行了(就是cry()方法还没出来),怎么构造代码块还可以调用cry()方法?
- 谢谢大家!
复制代码 |