zoukankan      html  css  js  c++  java
  • Java SE之[静态成员/类成员]与[非静态成员/实例成员]【static】

    定义

      静态成员:又称类成员,使用static修饰符的方法和变量;

      非静态成员:又称实例成员,未使用static修饰符的方法和变量。

    结论

     注:jdk1.8

    测试源码

    public class Main {
        private int x = 34;             //      非静态变量
        private static int a = 1;       //      静态变量
    
        private static int b = a;       //[√]   静态变量调用静态变量
        private static int c = getA();  //[√]   静态变量调用静态方法
    //    private static int d = x;       //[X]   静态变量调用非静态变量
    //    private static int e = getB();  //[X]   静态变量调用非静态方法
    
        private int y = a;              //[√]   非静态变量调用静态变量
        private int m = getA();         //[√]   非静态变量调用静态方法
        private int p = x;              //[√]   非静态变量调用非静态变量
        private int n = getB();         //[√]   非静态变量调用非静态方法
    
    
        public static int getA(){
            int result = a;             //[√]   静态方法调用静态变量
            result = getStaticA();      //[√]   静态方法调用静态方法
    //        result = x;                 //[X]   静态方法调用非静态变量
    //        result = getB();            //[X]   静态方法调用非静态方法
            return result;
        }
    
        public static int getStaticA(){//静态方法
            return a;
        }
    
        public int getB(){
            int result = 2;
            result = a;                 //[√]   非静态方法调用静态变量
            result = getA();            //[√]   非静态方法调用静态方法
            result = x;                 //[√]   非静态变量调用非静态变量
            result = getUnStaticB();    //[√]   非静态变量调用非静态方法
            return result;
        }
    
        public int getUnStaticB(){ //非静态方法
            return x;
        }
    
    }
    

    参考文献

      暂无

  • 相关阅读:
    字典序(摘)
    N
    Y
    B
    购物网站和秒杀系统实现技术
    行测技巧:十字交叉法解决比值混合问题
    数学符号读法大全
    搜狐畅游编程题
    sql删除重复记录
    'for' loop initial declarations are only allo
  • 原文地址:https://www.cnblogs.com/johnnyzen/p/10520650.html
Copyright © 2011-2022 走看看