类、对象、对象内存图、局部变量与成员变量、private修饰符、this、封装笔记

是对一类具备共同属性和行为的事物的抽象。this

类的组成
一、属性----成员变量(类中方法之外的变量)
二、行为----方法

建立类
image.pngspa

对象

建立对象 括号code

Phone p = new Phone();

使用成员变量对象

p.brand

使用方法 括号blog

p.call()

注意:成员变量有默认值
由于是new出来的,那么就在堆内存中,堆内存中的成员是有默认值的。生命周期

对象内存图

P10三、P104
image.png内存

多个对象指向相同时get

Student s1 = new Student();
Student s2 = s1;

上面这个语句是将s1的地址给了s2,它俩指向同一个列表。
image.pngit

成员变量与局部变量

两者的区别:class

一、位置:类内方法外;方法内或方法声明上
二、内存中的位置:堆内存;栈内存
三、生命周期:随对象的消失而消失;随方法的调用结束消失而消失
四、初始化值:有默认初始值;没有默认值,必须先定义、赋初值才能使用

image.png


private修饰符

性质:

一、是权限修饰符
二、能够修饰成员:成员变量和成员方法
三、private修饰后的成员只能本类访问,保护了本类成员不被别的类访问。

针对private修饰的成员变量

提供方法   get变量名(),来获取变量的值。用public修饰方法
提供方法   set变量名(参数),来设置变量的值。用public修饰方法

例:

public class Student{
    private int age;
    public int getAge(){
        return age;
     }
    public void setAge(int a){
        Age = a;
     }
 }
 
 public class StudentTest{
    public static void main(String[] args){
        Student s = new Student();
        setAge(5);
        System.out.println(s.getAge()); 
    }

}


this关键字

用来解决局部变量和成员变量同名的状况
image.png
上图不用this注释就会变成name = name;
计算机会识别为都是局部变量的name

总结:

一、
image.png

二、
image.png
a对象调用的A类,那么this就表明a对象。

this的内存状况

image.png

封装

P111
image.png

相关文章
相关标签/搜索