首页 存档 技术 查看内容

Java基础学习笔记(八)

2018-3-30 13:00 |来自: 互联网 305 0

摘要: 1.成员变量与局部变量的区别 1.作用域: 成员变量的作用域是整个类中都可以访问; 局部变量是的作用域是定义它的{}内, {}中的语句执行完它就被回收; 2.初始值: 局部变量使用前必须手动赋值, 系统不会赋默 ...


1.成员变量与局部变量的区别


1.作用域:

成员变量的作用域是整个类中都可以访问;

局部变量是的作用域是定义它的{}内, {}中的语句执行完它就被回收;


2.初始值:

局部变量使用前必须手动赋值, 系统不会赋默认值;成员变量系统会赋默认初始值.


3.所在内存区域:

局部变量在方法运行的栈内存里,在栈里,会自动释放;

成员变量在对象里,对象在堆里,成员变量也在堆里,不使用的对象会被垃圾回收机制在不确定的时候回收.



2.匿名对象的使用


(1)当对对象中的功能只执行一次的时候使用。

(2)用于作为实际参数进行传递。

(3)可以用匿名对象调用属性, 没意义.


3.封装


(1)封装的好处:便于重复使用,安全性高。

(2)private(私有的)权限修饰符。


4.private(私有)


private修饰成员变量和成员不能在其他类中直接访问.


注意:私有仅仅是封装的一种体现形式, 封装是一种思想, 就是将具体实现隐藏,仅对外暴露访问方式.


5.构造方法


(1)用途:用于给对象中属性进行初始化。

A:格式 类名(){code}Person(){}

B:Person(){}publicPerson(){}


(2)特点 不定义空参构造,系统会自动给一个空参构造,定义了构造方法无论是有参还空参的,系统就不再给空参数的了。


(3)重载构造方法,是根据参数列表来区分是哪个构造方法。


6.this关键字


每个对象都有一个指向自己的指针,就this。


7.this的作用


1.在方法中区分成员变量和局部变量.this.成员变量;

2.this语句可以在构造方法里调用其他构造方法;

3.在一个方法中,this可以调用本类的其他方法,可以省略:


(1)代表当前对象的引用。使用的时候,谁调用方法,this就代表谁。

(2)什么时候使用this呢?

A:当局部变量和成员变量重名的时候,可以用this进行区分。

B:this调用成员方法
C:this调用本类其他构造, 注意必须放在构造方法第一行。


代码如下:



运行结果:


8.创建对象在内存中的详细步骤: Person p = newPerson();


1.主方法进栈,给类类型变量p分配空间

2.在堆内存中开辟空间,分配内存地址
3.在堆内存中建立对象特有属性,并进行默认初始化
4.对属性进行显式初始化
5.将内存地址赋给栈内存中的p变量


9.static(静态)特点


随着类的加载而加载,随着类的消失而消失。优先于对象。静态可以被所有对象共享,也可以被类名所调用。



10.方法区


方法区是各个线程所共享的内存区域,它用于存储已被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据.

局部代码块

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部