Java学习 ---- 变量、对象与this关键字

Day06.01____Java中的对象

  • 成员变量: 定义在类中,方法外,所属于对象。(属性)
  • 成员方法: 定义在类中,所属于对象。(行为)
    • 格式:权限修饰符 返回值类型 方法名(参数列表){}
  • 创建对象格式:创建对象 类名 变量名 = new 类名()
  • 注明
    • 通过( 对象.变量名 )的方式可以访问到类中的成员变量,即属性
    • 通过( 对象.方法名() )的方式可以访问到类中的成员方法,即行为


Day06.02____Java中对象的内存图

  • 栈: 局部变量与方法都会进入到该区域中
  • 堆: new关键字创建的对象会进入到该区域中
  • 方法区: 每一个类的class文件都会进入到该区域中,如果一个类被反复调用,只有第一次调用时会通过javac产生class文件,其后都不会再产生class文件,因为第一次产生了之后就会保存在方法区中;方法区中还有一块专门放常量的区域,叫做常量池


Day06.03____Java中局部变量与成员变量的差别

  • 局部变量:
    1、定义在方法内或方法上( 指的就是参数 ),所属于方法
    2、存在于栈内存中
    3、只要所属的方法弹栈了,局部变量就会消失
    4、没有默认初始值,必须在创建时就对其赋值
  • 成员变量
    1、定义在类中,方法外,所属于对象
    2、存在于堆内存中
    3、调用的方法弹栈以后,会变成垃圾,等Java的垃圾回收机制将其回收后才会消失
    4、有默认初始值,创建时可以不用赋值


Day06.04____Java方法中形参或者返回值为类对象时

  • A:作为形参 在调用该方法时,需要将类对象作为参数进行传值
  • B:作为返回值 在调用该方法时,需要return一个该类的对象


Day06.05____匿名对象

  • A:匿名对象的表现形式
    • new 类名()
  • B:匿名对象的作用
    • 编写方法时可以作为参数传递
  • C:匿名对象的优势
    • 将( 类名 变量名 = new 类名() 变量名.属性 ),变成一行( new 类名().属性 )


Day06.06____Java中的封装思想

  • A: 封装即指对数据进行一种保护,让外界无法直接操作到类中的属性,但可以通过类中的方法去操作。可以用private关键字进行封装,可以用private体现私有,但不能说私有就是封装
  • B: 使用了private关键字后,该属性只能在本类中使用,其余的类无法使用
  • C: 当属性使用了private关键字以后,需要对外界提供setXxx()方法与getXxx()方法,用于对该属性进行访问与操作
  • D: 以后定义属性,都在前加上private关键字,对其进行封装


Day06.07____Java中this关键字

  • A:代表意义 this表示调用当前方法的对象引用,谁调用了含有this的方法,this就表示哪个对象
  • B:this的作用
    • this用来区分局部变量与成员变量重名,this.调用的是成员变量
    • this可以调用成员方法
  • C:解析:
class Method{
			....省略成员属性
			pubilic  static void print(){
				Sys("print")
				method();
			} 
			public  static void method(){
				Sys(",method")
			}
}
class Test{
			Method m = new Method();
			m.print();
}
  • 运行会输出print,method,为什么会输出print,method?
    • 当类的对象调用print()的方法时,里面有一个method()方法,而前面其实是省略了一个this关键字,在编译的时候java虚拟机会自动的帮我们补上去,即补成this.method()
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值