随笔 - 217  文章 - 4  评论 - 4  阅读 - 23587

自学Java第十二课

今天学习了Java语言中类和对象中的内存的分配

  student s1(栈内存)=new student()(堆内存),栈内存会产生一个地址,堆内存的地址和栈内存相同。

  两个对象指向相同时,一个对象修改了堆内存的数据,另一个对象访问时值会改变。

 

 

 

 成员变量和局部变量

  成员变量:类中方法外的变量。             局部变量:方法中的变量

  两变量之间的区别:①类中的位置不同;

                                   ②内存中的位置不同,成员变量在堆内存中,局部变量在栈内存中。

           ③周期不同,成员变量与对象共存亡,局部变量与方法共存亡。

           ④初始值不同,成员变量有默认初始值,局部变量没有默认初始值。

封装

  private关键字  权限修饰符,修饰成员,其修饰的成员只能在本类中使用。使用private关键字之后,对变量不能直接赋值,而是利用方法进行赋值。

 

 this

  (1)this修饰的变量用于指代成员变量。方法形参与成员变量同名时,加this来区分开成员变量。

  (2)当形参与成员变量相同时使用this,结局局部变量隐藏成员变量的问题。

  (3)方法被那个对象引用,this代表那个对象。

  封装的原则:将类的某些信息隐藏在类的内部,不允许外界程序直接访问,通过类提供方法来实现对隐藏信息的操作和访问。例如:getname();

  好处:①用方法来控制成员变量的操作,提高代码的安全性;

     ②把代码进行封装,提高代码的复用性。

 

posted on   跨越&尘世  阅读(17)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示