A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

定义一个类时所用的修饰符有几个?作用是什么?是否可以混用?

可以混用,但是abstract和final不能混用

可以混用,但是abstract和final不能混用

成员变量的修饰符有哪些?作用是什么?是否可以混用?



可以

成员方法的修饰符有哪些?作用是什么?是否可以混用?



可以

成员变量和局部变量的区别是什么?

(1)作用域
        成员变量:针对整个类有效。
        局部变量:只在某个范围内有效。(一般指的就是方法,语句体内)
(2)存储位置
        成员变量:随着对象的创建而存在,随着对象的消失而消失,存储在堆内存中。
        局部变量:在方法被调用,或者语句被执行的时候存在,存储在栈内存中。
                          当方法调用完,或者语句结束后,就自动释放。
(3)初始值
        成员变量:有默认初始值。
        局部变量:没有默认初始值,使用前必须赋值。

Person p = new Person();在内存中做了哪些事情?

(1)将Person.class文件加载进内存中。
(2)如果p定义在主方法中,那么,就会在栈空间开辟一个变量空间p。
(3)在堆内存给对象分配空间。
(4)对对象中的成员进行默认初始化。
(5)对对象中的成员进行显示初始化。
(6)调用构造代码块对对象进行初始化。(如果没有就不执行)
(7)调用构造方法对对象进行初始化。对象初始化完毕。
(8)将对象的内存地址赋值给p变量,让p变量指向该对象。

this表示什么含义?

(1)this关键字代表本类对象的一个引用,谁调用this所在的方法,this就代表谁  
(2)this的使用场景
        A:用于区分同名成员变量和局部变量;
        B:在定义函数时,该函数内部要用到调用该函数的对象时,因为此时对象还没建立,故this代表此对象
        C:构造函数间调用,this(参数)必须作为第一条语句存在。

什么叫匿名对象,一般在什么情况下使用匿名对象?

一个没有名字的对象, 创建了一个对象出来,没有赋给一个变量;

特点:对方法或字段只进行一次调用时;

           可作为实际参数进行传递;

           只在堆里面开辟存储区域,只能使用一次, 使用完就被销毁了;

何时使用?只拿来用一次!!

new Person();表示匿名对象,没有名字的对象

new Person().age = 17;//使用一次之后就被销


---------------------
【转载,仅作分享,侵删】
作者:zhiguo98
来源:CSDN
原文:https://blog.csdn.net/yanzhiguo98/article/details/88410924
版权声明:本文为博主原创文章,转载请附上博文链接!

1 个回复

倒序浏览
奈斯,感谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马