2021-03-11

面向对象内容的三条主线:
1.Java类及类的成员
2.面向对象的三大特征
3.其它关键字

人把大象装冰箱

1.面向过程:强调的是功能行为,以函数为最小单位,考虑怎么做。

1.把冰箱门打开

2.抬起大象,塞进冰箱

3.把冰箱门关闭

2.面向对象

人{
    打开(冰箱){
         冰箱.开开();
    }

    抬起(大象){
        大象.进入(冰箱);
    }

  关闭(冰箱){
         冰箱.关闭();
    }

}

冰箱{
    开开(){
    
    }
    关闭(){
    
    }
}

大象{
    进入(冰箱){
    
    }
}



Person p1 = new Person();
p1.name = "Tom";
p1.isMale = true;


//将p1变量保存的对象地址值赋给p3,导致p1和p3指向了队空间中的同一个对象实体
Person p3 = p1;
System.out.println(p3.name);//Tom
        
p3.age = 10;
System.out.println(p1.age);


class Person{
    //属性
    String name;
    int age = 1;
    boolean isMale;
}

Java的内存解析:

堆(Heap):此内存区域的唯一目的就是存放对象的实例,几乎所有的对象实例都在这里分配内存。这一点在Java虚拟机规范中的描述是:所有对象实例以及数组都要在堆上分配。
栈(Stack):虚拟机栈。虚拟机栈用来存放局部变量等。
方法区(Method Area):用于存储已经被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。

你可能感兴趣的:(2021-03-11)