JAVA学习篇7——变量、方法和类的补充

关于类和对象:
在一个文档文档中定义多个类的时候    只能类名和文档名相同的类才可以被public 修饰
:是抽象的概念集合,表示的是一个共性的产物,类之中定义的是属性和行为(方法); 
对象:对象是一种个性的表示,表示一个独立的个体,每个对象拥有自己独立的属性,依靠属性来区分不同对象。

关于成员变量与局部变量:
成员变量  存放于堆中  作用域:当前类中   有默认初始值为0,故可以不用赋初值;
局部变量  存放于栈中  作用域:当前方法里,故可以与成员变量同名  无默认初始值,必须赋初值
public class VarDemo1 {   //
    //成员变量  
     int  num;//堆   在当前类
    public void  show(){
        //局部变量     作用域  只能在当前的方法里面有效
        int num = 100;
        //调用局部变量
        System.out.println(num);//局部变量   就近原则
        //成员变量调用
        //VarDemo1 varDemo1 = new VarDemo1();   //
实例化对象
        //this   表自己      那个对象实例化就代表那代个
        System.out.println("===="+this.num);
    }    
}



关于实例化:
VarDemo demo = new VarDemo(); 
VarDemo demo1 = new VarDemo(); 
方法中实例化对象,其中demo和demo1是new出来的地址,存放着类里面的变量和方法
尽管demo和demo1都是new的同一个类,但是其地址是不同的,故demo==demo1返回是false,但是其指向的内容是一样的
在内存中的分配:demo存于栈中,new VarDemo()存于堆中,VaeDemo类中的方法存于方法区中
注:JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)。(后续跟进该知识点)
方法的调用       demo.方法名
其中  
匿名调用    用在只调用方法一次的时候    匿名对象可以当参数传递
new VarDemo().show();


this的用法:
JAVA学习篇7——变量、方法和类的补充

static: 
            static方法称作静态方法
            静态方法不依赖于任何对象就可以进行访问,因此对于静态方法来说,是没有this的
            在静态方法中不能访问类的非静态成员变量和非静态成员方法
            要注意的是,虽然在静态方法中不能访问非静态成员方法和非静态成员变量,但是在非静态成员方法中是可以访问静态成                                   员方法/变量的

另外关于内存中的堆、栈,到现在还不是很清楚,先放一放。。。