java static int_Java中static关键字概述
例如一个学生类中,我们需要统计下学生类中学生对象的数量,此时数量要定义为静态变量;
示例代码:
package com.java1995;
public class Student {
int id=0;
static int num=0;
Student(int id){
this.id=id;
num++;
}
public static void main(String[] args){
Student s1=new Student(1);
Student s2=new Student(2);
Student s3=new Student(3);
Student s4=new Student(4);
Student s5=new Student(5);
Student s6=new Student(6);
System.out.println("Num:"+Student.num);
}
}
输出结果:6
1.静态 变量
静态变量属于类的,和对象没有关系;
费静态变量属于某个对象的,每个对象都有 该数据的副本,
而静态变量只有一个
访问静态变量是通过(类名.变量名)来访问的
示例代码:
package com.java1995;
public class Test {
int commonint=0;
static int staticint=0;
Test(int x){
this.commonint=x;
}
public static void main(String[] args){
Test t1=new Test(1);
Test t2=new Test(2);
System.out.println("t1.commoint:"+t1.commonint);
System.out.println("t2.commoint:"+t2.commonint);
t1.staticint=1;
//静态变量在整个类中是唯一的,对象t1改变静态变量,该类中的静态变量同时进行改变,对其他的对象也有影响
System.out.println("t1.staticint:"+t1.staticint);
System.out.println("t2.staticint:"+t2.staticint);
}
}
2.静态方法
用static 修饰的方法称为静态方法
访问静态方法是通过(类名.方法名)来访问
示例代码:
package com.java1995;
public class StaticMethod {
public static void main(String[] args){
//类名.方法名进行访问
MyMethod.printInt(111111);
MyMethod.printString("Hello world");
}
}
class MyMethod{
static void printString(String args){
System.out.println(args);
}
static void printInt(int i){
System.out.println(i);
}
}
(1)静态方法不能访问非静态变量
(2)费静态方法可以访问静态变量
PS:静态属性或者方法在类加载的时候产生的
非静态属性或者方法是在new的时候产生的
测试代码:
package com.java1995;
public class Domo {
static int x=0;//定义一个静态变量x,赋初值为0
static{
x=100;//创建一个静态语句块,对x进行赋值
}
//创建一个构造器,输出x
Domo(){
System.out.println(x);
}
public static void main(String[] args){
new Domo();
}
}
运行结果:100,
说明程序先调用的语句块,static{x=100},而不是直接调用的构造器
即,先有静态属性,再有非静态属性
3.静态常量
public static final int x=1;
java static int_Java中static关键字概述相关推荐
- java static method_java 中static的几种用法
1.static修饰变量和方法 在类的变量和方法上加上了static修饰符以后,在JVM加载该类的时候就会被分配到方法区(new 出来的对象分配到堆),因此不需要在创建该类的实例以后再进行引用. 有几 ...
- JAVA及数据库中的关键字(常用)
JAVA中的关键字 public/private/protected/class public 权限修饰符,不同包下,也可以使用private 被private修饰的成员,只能在本类中进行访问,其他类 ...
- php self 和 static,PHP中static和self有哪些区别?
PHP中static和self有哪些区别? 发布时间:2020-04-02 14:51:57 来源:亿速云 阅读:36 作者:小新 这篇文章主要为大家详细介绍了PHP中static和self有哪些区别 ...
- java static void_java中static关键字
一.static关键字的介绍 关于static关键字,我们最是在一个类的主方法中见到的,如"public static void main(String[] args)",stat ...
- java assert int_java中的assert(转载)2
转载自:http://lavasoft.blog.51cto.com/62575/43735/ 第11楼的说法 assert 有很大的用处 首先可以用在单元测试代码中.junit侵入 ...
- java synchronized boolean_java中synchronized关键字
代码示例: package com.test; /* * x,y值为什么不能保持相同: * */ public class Pair implements Runnable{ boolean b = ...
- java integer == int_Java中int和Integer的区别详解
1.Java 中的数据类型分为基本数据类型和复杂数据类型 int是前者>>integer 是后者(也就是一个类) 2.初始化时>> int i =1; Integer i= n ...
- 从 Java 档案(JAR) 中读取文件
Java 档案 (Java Archive, JAR) 文件是基于 Java 技术的打包方案.它们允许开发人员把所有相关的内容 (.class.图片.声音和支持文件等) 打包到一个单一的文件中.JAR ...
- java读取系统中指定的文件_java读取jar中指定的文件
Java 档案 (Java Archive, JAR) 文件是基于 Java 技术的打包方案.它们允许开发人员把所有相关的内容 (.class.图片.声音和支持文件等) 打包到一个单一的文件中.JAR ...
最新文章
- Maven中jar版本冲突问题的解决
- 友盟统计--注意事项
- SparkWeb 编译
- memcached使用详解
- drawboard pdf拆分文件_掌握在线PDF拆分技巧,从此打开文件不再处于“加载中”...
- php apc缓存以及与redis的对比
- 游戏产业链:游戏分发/渠道商
- 编程中的快速数学公式 python
- Python之OpenGL笔记(30):飘扬的旗帜
- 【STM32】几款常用产品(F1、F4、F7)的区别
- 视频播放器 layui-ckplayer
- 关于销售订单高级定价的一点疑惑
- EAS7.5服务器文件夹备份,ORACLE+EAS数据备份与恢复参考
- android输入法服务,Android调用系统输入法
- rk3399 typec鼠标及滑鼠问题
- 第一章 基本数据类型-API的理解和使用
- FleaPHP 开发指南 - 4. 命名规范和目录结构
- 卡苹果6plus在线_坐公交“神器”来了!在线充值、在线年检、信息查询...太方便了!...
- zipkin ui界面详解
- ChatGPT版必应疑似「发疯」?微软紧急限制回答数目
热门文章
- object转为Long类型
- 华为鸿蒙系统是指芯片吗_麒麟芯片+鸿蒙系统+国产屏幕,这样的华为手机你会买吗?...
- till和until的区别
- $.get()调用php_jquery get ($.get) 事件用法与分析
- 2D动画——CSS制作摩天轮
- java8List.sort()排序常用方法
- 新浪微博错误代码大全
- nginx反向代理配置去除前缀问题
- 如何删除idea里面创建的工程项目
- java oss 批量传输_如何批量安装软件