• 静态方法的使用2——与实例化方法的区别


    1.写法不同

    静态方法写法为      public static void add()

    实例化方法写法为   public void add2()

    2.调用方法不同

    静态方法只能直接调用静态的方法和属性 写法为:Lianxi.add()//类名.变量

    实例化方法可以调用实例化的方法和属,也可以调用静态的方法和属性(首先要实例化New )

    package com.hanqi;
    
    public class Lianxi {
    
        public static void add() {
            System.out.println("这是一个静态方法");
        }
    
        public void add2() {
            System.out.println("这是一个动态方法");
        }
    
        public static void main(String[] args) {
            Lianxi.add();//静态方法可以直接调用
            Lianxi lianxi = new Lianxi();
            lianxi.add();//实例化方法也可以调用非静态方法的属性和方法,,首先要实例化
            lianxi.add2();//实例化方法必须首先实例化才可以调用实例化方法的属性和方法
        }
    
    }

    3.静态的属性和方法是共享的,而实例化的属性和方法是单个的

    package com.hanqi;
    
    public class Lianxi {
    
        public static int t1 = 0;// 静态
        public int t2 = 0;// 非静态
    
        public void add2() {
            t1++;
            t2++;
            System.out.println(this + "	静态属性 t1=" + t1 + "	实例属性t2=" + t2);
        }
    
        public static void main(String[] args) {
            for (int i = 0; i < 10; i++) {
    
                Lianxi lianxi = new Lianxi();
    
                lianxi.add2();
    
    }

    运行结果为


    可以看到作为静态的t1随着循环次数的增加之不断改变,是共享的,只有一份;而实例化的t2值没有改变,实例属性是单独的
  • 相关阅读:
    [组件封装] 微信小程序
    发布一个npm包(webpack loader)
    深入理解JavaScript隐式类型转换(详解 +
    通过nginx代理之后,获取客户端ip
    IntelliJ Idea 常用快捷键列表
    Example For maven-compiler-plugin
    maven 使用tomcat插件 自动化部署war
    jsoup: Java HTML Parser (类似jquery)
    Export Data from mysql Workbench 6.0
    安装openJDK 8
  • 原文地址:https://www.cnblogs.com/Chenshuai7/p/5041206.html
Copyright © 2020-2023  润新知