static关键字的使用
来源:互联网 发布:淘宝新手开店视频教程 编辑:程序博客网 时间:2024/06/07 04:57
在初学java时,是通过马士兵老师的J2SE视频入门的,老师从java环境的配置,编译和运行,一步步的引领我们走向java的世界。随着课程的深入,发现还是有一些与之前学习相类似的内容,当时没有总结的,现在拿出小demo来弥补一下。本篇博文主要复习一下static关键字的使用。
先上例子:
public class Cat{private int sid=0;private String name;int id;Cat(String name){this.name =name;id=sid++;}public void info(){System.out.println("My name is " + name + " No." + id);}public static void main(String arg[]){Cat.sid=100;Cat mimi =new Cat("mimi");Cat pipi=new Cat("pipi");mimi.info();pipi.info();}}例子中没有使用static关键字,在运行时,Cat.sid=100;会报错,显示错误信息为Cannot make a static reference to the non-static field Cat.sid。
这是因为在主方法中使用了static关键字来声明,该方法就是静态方法,在调用时,不再针对某个对象调用,也就不会将对象的引用传递给它,所以在static方法中不可访问非static的成员变量。
例子中sid专属于某个对象的,只有实例化出某个对象后,该对象才会具有sid,若不实例化,则这个对象就不存在,该sid就不能使用。于是就可引出static关键,修改如下。
public class Cat{private static int sid=0;private String name;int id;Cat(String name){this.name =name;id=sid++;}public void info(){System.out.println("My name is " + name + " No." + id);}public static void main(String arg[]){Cat.sid=100;Cat mimi =new Cat("mimi");Cat pipi=new Cat("pipi");mimi.info();pipi.info();}}
在类中,只需将sid用static声明为静态成员变量,它为该类的公有变量,在第一次使用时被初始化,对于该类的所有对象来说,static成员变量只有一份。静态方法不会针对某个对象,没有对象照样可以调用。(类.方法名即Cat.静态方法名,不用写对象的名字,)也正因此,在static方法中不能访问非静态(非static)成员,上述例子的运行结果为:
My name is mimi No.100
My name is pipi No.101
0 0
- static关键字的使用
- static关键字的使用
- static 关键字的使用
- 关键字static的使用
- static关键字的使用
- static 关键字的使用
- static关键字的使用
- static关键字的使用
- static关键字的使用
- Static关键字的使用
- static关键字的使用
- static关键字的使用
- static 关键字的使用
- static parent关键字的使用
- 关键字static,final的使用
- JAVA static关键字的使用
- static关键字的使用总结
- Java static关键字的使用
- C++ 类的相关语法,符号:和::的用法
- [Kaggle] 数据建模分析与竞赛平台介绍
- C++::一道有趣的面试题(关于delete)
- 构造函数与构造函数的继承以及call和apply的区别
- ubuntu开启关闭Mysql
- static关键字的使用
- NOIP2009提高组复赛原题题解——Proking
- win10下caffe快速配置(包括PythonCaffe)+Caffe官方教程中译本及caffe网络模型各层详解教程
- Python cmd进入文件夹目录指令,以安装python第三方库pip为例
- 一、redis的学习前奏--NoSQL数据库的介绍(上)
- 【第二篇】升级配置-OSD模块-图传-显示屏-摄像头
- 学期总结
- Servlet基础知识
- iOS开发中的性能优化(上)