java static 变量与方法
来源:互联网 发布:广州数控gsk980tdc编程 编辑:程序博客网 时间:2024/05/16 01:16
最近在看马士兵的java视频,看到static用法。总结如下:
static变量为静态变量,为类的公用变量,非静态和静态方法均可访问,可直接用类名+ . 调用。内存中存放data区域,仅有一份值。
1、静态方法 p() 可在非静态方法print()和静态方法main()直接使用,无需创建对象引用。
2、静态变量 sid 可在非静态方法print()和静态方法main()直接调用,无需创建兑现给引用。
编译有以下错误:
java:21: 错误: 无法从静态上下文中引用非静态 变量 this
System.out.println("最终名字="+this.name);
^
java:22: 错误: 无法从静态上下文中引用非静态 变量 this
System.out.println("最终的年龄="+this.age);
^
2 个错误
static变量为静态变量,为类的公用变量,非静态和静态方法均可访问,可直接用类名+ . 调用。内存中存放data区域,仅有一份值。
static方法为静态方法,可直接类名+ . 也可以直接使用(比如main)。调用static方法时不会将对象的引用传给他,因此static方法不可访问非static变量。
public class ThisStaticDemo{String name; static int age;static int sid=100; public ThisStaticDemo (){ this.age=21;sid++; } public ThisStaticDemo(String name,int age){this(); this.name="Mick"; } static void p(){System.out.println("我是静态方法");}private void print(){p();System.out.println(ThisStaticDemo.sid); System.out.println("最终名字="+this.name); System.out.println("最终的年龄="+this.age); } public static void main(String[] args) {p();System.out.println(ThisStaticDemo.sid);ThisStaticDemo tt=new ThisStaticDemo("",0); tt.print(); }}
1、静态方法 p() 可在非静态方法print()和静态方法main()直接使用,无需创建对象引用。
2、静态变量 sid 可在非静态方法print()和静态方法main()直接调用,无需创建兑现给引用。
如果在将print()设置为静态方法,代码如下;
public class ThisStaticDemo{String name; static int age;static int sid=100; public ThisStaticDemo (){ this.age=21;sid++; } public ThisStaticDemo(String name,int age){this(); this.name="Mick"; } static void p(){System.out.println("我是静态方法");}private static void print(){p();System.out.println(ThisStaticDemo.sid); System.out.println("最终名字="+this.name); System.out.println("最终的年龄="+this.age); } public static void main(String[] args) {p();System.out.println(ThisStaticDemo.sid);ThisStaticDemo tt=new ThisStaticDemo("",0); tt.print(); }}
编译有以下错误:
java:21: 错误: 无法从静态上下文中引用非静态 变量 this
System.out.println("最终名字="+this.name);
^
java:22: 错误: 无法从静态上下文中引用非静态 变量 this
System.out.println("最终的年龄="+this.age);
^
2 个错误
-----------------
由于在代用static方法时,不会将引用传过来,因此无法访问非静态变量。
0 0
- java static 变量与方法
- Static--方法与变量
- Java 中的 static 使用之静态变量与静态方法
- Java static变量和static方法介绍
- static变量与实例变量 java
- 【Java】static方法与非static方法
- java中static变量与非static变量初始化顺序
- java 静态方法和静态变量 static
- java 静态方法和静态变量 static
- Java中的static变量、方法、代码块
- java 静态方法和静态变量 static
- Java static静态变量、静态方法
- java中的static 静态变量、静态方法
- Java static静态方法 静态变量
- 分析java中的类(static)变量和类(static)方法
- java - final与static方法
- 【Java】字符串变量和整形之间的相互转化与静态方法static
- static 方法和static 变量
- Unity3D中LitJson使用
- java 二维码生成
- Python中实现对Timestamp和Datetime及UTC时间之间的转换
- 从文档类获取视图类指针
- CSS从大图中抠取小图完整教程(background-position应用)
- java static 变量与方法
- 一位入行20年的老程序员对新人的建议
- PowerDesigner 使用说明
- 布局的使用
- iOS定位和位置信息获取
- key scan
- Version和Build的区别
- Java过滤器和监听器
- 数量积 向量的点积 即3D中任意两个三维向量的点积(数量积)推导及代码实现