自学Java第十二课

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

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

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

 

 

 

 成员变量和局部变量

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

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

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

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

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

封装

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

 

 this

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

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

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

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

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

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

 

posted on 2021-07-11 19:14  跨越&尘世  阅读(17)  评论(0编辑  收藏  举报