【职坐标】java面向对象前言——static关键字
来源:互联网 发布:java框架 编辑:程序博客网 时间:2024/05/17 22:20
Java面向对象前言
—— static关键字详解
一、 Static关键字的概念
static为“全局”或者“静态”的意思,用来修饰成员变量(类的属性)和成员方法(类的方法),也可以用来修饰代码块。但是在java中没有全局变量的概念,所以在java中static翻译为静态
二、 使用static修饰的特点
被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。
当声明多个同一类型的对象时(由同一个类创建的不同对象),并不产生static变量的拷贝,而是该类所有的实例变量共用同一个static变量,所以说在类中使用static修饰的成员(属性和方法)都是所有对象共享的,也是唯一的。
三、 动态加载和静态加载简介
程序绑定的概念
绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来
动态绑定和静态绑定
静态绑定
在程序执行前方法已经被绑定(也就是说在编译过程中就已经知道这个方法到底是哪个类中的方法),此时由编译器或其它连接程序实现。
动态绑定
1.在运行时根据具体对象的类型进行绑定
2. 动态绑定的过程
a) 虚拟机提取对象的实际类型的方法表;
b) 虚拟机搜索方法签名;
c) 调用方法。
四、 Static关键字使用详解
a) 作为修饰符, static可以用来修饰变量、方法、代码块(但绝对不能修饰类)。
修饰变量:
类的所有对象共同拥有的一个属性,也称为类变量。这类似于C语言中的全局变量。类变量在类加载的时候初始化,而且只被初始化一次。在程序中任何对象对静态变量做修改,其他对象看到的是修改后的值。因此类变量可以用作计数器。另外,Java Static变量可以用类名直接访问,而不必需要对象。
修饰方法:
类的所有对象共同拥有的一个功能,称为静态方法。静态方法也可以用类名直接访问,而不必需要对象。所以在静态方法里不能直接访问非静态变量和非静态方法,在Static方法里不能出现this或者super等关键字。
修饰Java代码块:
用static去修饰类里面的一个独立的代码块,称为静态代码块。静态代码块在类第一次被加载的时候执行,而且只执行一次。静态代码块没有名字,因此不能显式调用,而只有在类加载的时候由虚拟机来调用。它主要用来完成一些初始化操作。
五、 Static在使用时的限制
a) 它们仅能调用其他的static 方法。
b) 它们只能访问static数据。
c) 它们不能以任何方式引用this 或super。
六、 总结
a) static成员是不能被其所在class创建的实例访问的。
b) 如果不加static修饰的成员是对象成员,也就是归每个对象所有的。
c) 加static修饰的成员是类成员,就是可以由一个类直接调用,为所有对象共有的。
- 【职坐标】java面向对象前言——static关键字
- 面向对象—static关键字
- static关键字-java面向对象
- java--面向对象static关键字
- java面向对象前言之final关键字
- 黑马程序员—Java面向对象(类和对象、封装、构造方法、this关键字、static关键字)
- 十 java面向对象程序设计(static关键字)
- java面向对象(八) static关键字
- Java 面向对象之static关键字
- Java面向对象(3)static关键字
- Java面向对象笔记(六)static关键字
- 面向对象 static关键字
- 面向对象-static关键字
- (08)Java学习笔记——面向对象02——关键字this static
- 黑马程序员——高新技术---Java基础语法—面向对象_构造方法,static 关键字
- 黑马程序员笔记——Java面向对象之static关键字和单例设计模式
- 黑马程序员——Java基础---面向对象(构造方法和static关键字)
- Java面向对象——构造方法和关键字(static、this、final、super)
- 简单逆序输出和空格转换
- mysql官方下载安装教程(centos)
- Android 操作SQLite基本用法
- 自定义RatingBar的一些问题
- 我是猪,不关机
- 【职坐标】java面向对象前言——static关键字
- CocosCreator中使玩家移动到点击位置
- javascript快速入门
- baidu地图sdk使用(3)自定义定位图标
- NYOJ 115 Dijstra入门
- android将图片转换为圆形图片
- 知识点:Java变量和数组的默认值
- Hibernate学习笔记----session核心方法
- 多平台消息推送是安卓耗电原因之一?