面向对象 构造代码块 静态代码块
来源:互联网 发布:中国人歧视中国人知乎 编辑:程序博客网 时间:2024/05/21 14:06
面向对象:三个特性:封装,继承,多态
具体对象就是对应java在堆内存挂中new建立实体
匿名对象使用方式一:当对对象的方法只调用一次是,就可以对匿名对象来完成,这样写比较简化
如果对一个对象进行成员调用,必须给这个对象起个名字。
匿名对象使用方式二:可以对匿名对象最为实际参数进行传递
对象一建立就会调用与值对应的构造函数
构造函数的作用:可以用于对象进行初始化
构造函数的小细节:当一个类中没有定义构造函数式,那么系统会默认给该类加入一个空参数的构造函数
当在类中自定义了构造函数后,默认的构造函数就没有了
构造代码块。
作用:给对象进行初始化,。
对象一建立就运行,而且优先于构造函数执行
和构造函数的区别:
构造代码块就是给所有对象进行统一初始化
Static:
1 优先于对象的存在,
2 随着类的加载
3 被所有对象所共享
4 可以被类名直接调用
类中的方法不再堆里,而在另一块内存中:(方法区,也叫数据区,也叫共享区),静态成员变量也在这一块中优先于对象存在
静态方法只能访问静态成员和方法,this和super都是对象所以也不调用
非静态方法能访问静态成员和方法
主函数main(String[]args)也是能往里面传递参数的,
把构造函数私有化,防止被建造对象,(当都是静态方法的时候)
能隐藏的就隐藏。
Static {};优先于main方法,优先级同时高于构造方法随着类的加载而执行这个代码块
只有用到类中的东西才能加载对应的类
{
}
Person p=new Person(“zhengsna”,20);
1 因为new用到了Person.class所以会先找到Person.class文件并加载到内存中
2执行该类中的static代码块
3在对内存中开辟空间,分配内存地址
4在堆内存中建立对象的特有属性,并进行默认初始化。
5对属性进行显示初始化
6对对象进行构造代码块初始化
7对对象中的构造方法进行初始化
8将内存中的地址赋值给p变量
- 面向对象 构造代码块 静态代码块
- 面向对象—静态代码块+构造代码块+局部代码块
- 面向对象(静态代码块).
- 面向对象静态代码块
- 面向对象静态代码块
- 面向对象--静态代码块
- 黑马程序员-面向对象(构造函数、构造代码块、静态代码块)
- 面向对象及构造代码块、静态代码块、构造函数的区别
- 构造块/静态代码块
- 普通代码块 静态块 构造块
- javaSE-面向对象-构造代码块
- Java面向对象 构造代码块
- java面向对象(静态代码块)
- javaSE-面向对象-静态代码块
- 构造代码块与静态代码块
- 静态代码块和构造代码块
- 构造代码块 VS 静态代码块
- 静态代码块和构造代码块
- js刷新页面方法大全
- 使用两个队列实现一个栈
- 渗透学习笔记之密码相关
- Android基础篇之底部菜单栏的编辑
- 工作流Activiti的学习总结(一)安装条件以及各步骤的作用以及不同环境需要lib包
- 面向对象 构造代码块 静态代码块
- 别样JAVA学习(五)继承上(0.0)继承概述
- linux设备驱动——UVC驱动程序
- BZOJ 1014 JSOI 2008 火星人prefix Splay维护字符串Hash + 二分
- Spring管理quartz动态创建定时器,增,删,改,查
- python-变量的作用域
- 使用AutoHotkey在当前目录打开命令行(cmd.exe)
- win7系统下如何去掉百度云盘或360云盘增加的右键菜单
- URI与URL的区别与联系