2020/7/1 java 面向对象 封装

Posted asgetharytmjxtyk,dxh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2020/7/1 java 面向对象 封装相关的知识,希望对你有一定的参考价值。

面向对象

l  面向对象思维方式是一种更符合人们思考习惯的思想

l  面向过程思维方式中更多的体现的是执行者(自己做事情),面向对象中更多的体现是指挥者(指挥对象做事情)。

l  面向对象思维方式将复杂的问题简单化。

类与对象

1、先按照名词提炼问题领域中的对象

2、对对象进行描述,其实就是在明确对象中应该具备的属性和功能

3、通过new的方式就可以创建该事物的具体对象

4、通过该对象调用它以后的功能。

类与对象区别   类是对某一类事务的抽象描述  而对象用于表示显示中该类事务的个体

局部变量  和 成员变量   区别

定义的位置不同:  定义在类中的是成员变量   定义在方法或{}语句中的是局部变量

在内存中的位置不同:成员变量在堆的对象里  局部变量 在栈的方法里

声明周期不同   

成员变量随着对象的出现而出现在堆中,随着对象的消失而从堆中消失(gc垃圾回收机制)

局部变量随着方法的运行而出现在栈中,随着方法的弹栈而消失

初始化不同  

成员变量因为在堆内存中,所有默认的初始化值

局部变量没有默认的初始化值,必须手动的给其赋值才可以使用。

 

 

封装

隐藏实现细节 对外提供可以访问的方式

私有private    不能直接调 需要使用方法

成员变量和局部变量同名问题

可以在成员变量名前面加上this.来区别成员变量和局部变量

class Person {
    private int age;
    private String name;
    
    public void speak() {
        this.name = "小强";
        this.age = 18;
        System.out.println("name=" + this.name + ",age=" + this.age);
    }
}

class PersonDemo {
    public static void main(String[] args) {
        Person p = new Person();
        p.speak();
    }
}

 

以上是关于2020/7/1 java 面向对象 封装的主要内容,如果未能解决你的问题,请参考以下文章

面向对象语言的缺点

面向对象语言的缺点

面向对象三大基本特性和五大基本原则

js原型及原型链

JAVA面向对象,继承、封装、多态

Java面向对象:封装特性的学习