面向对象-1封装
来源:互联网 发布:rip的udp端口号是 编辑:程序博客网 时间:2024/05/19 11:18
类与对象的理解:
new来创建的。
成员变量与局部变量的区别:
栈内存中有的值就不用去堆内存中找:(c.num=10而不是4)
类类型参数:
除了7种基本数据类型还有3种引用数据类型:数组,类,借口。如图:
匿名对象:没有名字的对象
new car();//匿名对象,其实就是定义对象的简写格式。
匿名对象:
1,当对象对方法仅进行一次调用的时候,就可以简化成匿名对象。如下图
匿名对象的内存图:(当对属性赋值的时候没有意义,因为刚开辟空间赋值之后就没用了,因为没有引用地址所指向,但是方法就不一样了,调用了一次就执行了一次方法)
2,匿名对象可以作为实际参数进行传递。
Car c1 = new Car();
// show(c1);
show(new Car());(show是一个接受类类型的方法)
引用数据类型参数传递图解:
封装:
一般成员变量都定义成私有的,对外提供公共访问方式,因为可以控制(不让其他类随便改变自己的变量值,这就是封装意识,提高安全性)
setName和getName已经成为固定模式。
private:
是一个权限修饰符,权限最小,只能修饰成员(不能修饰局部)
私有的内容只在本类中有效。
一般不对外使用的,都隐藏起来,只要是类中的成员不对外提供,都可以隐藏起来。
注意:私有仅仅是封装的一种体现而已
封装是私有呗?不是。不私有可能封装。
在java中最小的封装体就是函数。类是封装体。框架是封装体。
封装是指隐藏对象的属性和实际细节,仅对外提供公共访问方式。
好处:将变化隔离,便于使用,提高重要性和安全性。
封装原则:将不需要对外提供的内容都隐藏起来
把属性隐藏,提供公共方法对其访问
构造函数:构造创建对象时调用的函数。 可以对对象进行初始化。
创建对象都必须通过构造函数初始化。
一个类中如果没有定义过构造函数,那么该类中会有一个默认的空参数构造器。
如果类中定义指定的构造函数,那么类中的默认构造函数就没有了。
一般函数和构造函数的区别?
构造函数:对象创建时,就会调用与之对应的构造函数,对对象进行初始化。
一般函数:对象创建后,需要函数功能是才能调用。
构造函数:对象创建时,会调用只调用一次。
一般函数:对象创建后,可以被调用多次。
构造函数的重载:函数的参数类型 个数 和顺序都不同。(每个重载的方法都必须有一个独一无二的参数类型列表)
- 面向对象-1封装
- JavaScript面向对象(1)-封装
- Javascript面向对象编程(1):封装
- C开发经验1:面向对象封装
- JavaSE阶段1_面向对象封装
- 面向对象----抽象----封装
- 面向对象中的封装
- 面向对象之封装
- 面向对象,封装,静态
- 面向对象之封装
- 面向对象之封装
- 面向对象--封装
- 面向对象之封装
- javascript 面向对象 封装
- 面向对象--封装
- 面向对象 封装
- java 面向对象----封装
- 11 面向对象 封装
- 复杂链表的复制
- 83. Remove Duplicates from Sorted List
- 【JS】【个人学习小记】获取并判断浏览器信息
- FZU -- 2282 和 DHU -- 2049 【简单错排 + 组合数学】
- STC89C51RC/ED+ 系列单片机命名规则
- 面向对象-1封装
- Windows apache虚拟主机配置
- 使用GitHub Pages搭建个人博客
- 深度冲突及W缓冲
- 正交匹配追踪(OMP)其它改进算法
- 自定义闹钟设置
- 通过Mybatis实现对单表的增删改查-通过定义一个接口实现
- Jacobian矩阵和Hessian矩阵
- applicationContext.xml配置文件讲解