【Java】static 修饰成员方法

简介: 【Java】static 修饰成员方法

static 修饰成员方法 简介 + 应用

static 修饰成员方法


1.static 修饰成员方法

测试类:

package suziguang_d2_staticdemo;
public class Test
{
    public static void main(String[] args) {
        // 1.类方法使用
        // 类.方法
        Student.printHelloWorld();
        // 对象.方法
        Student s1 = new Student();
        s1.printHelloWorld();
        
        // 2.对象方法使用
        // 类.方法 error
        //Student.printPass(); // error
        // 对象.方法 right
        Student s2 = new Student();
        s2.score = 66;
        s2.printPass();
        
    }
}

Student类:

package suziguang_d2_staticdemo;
public class Student
{
    int score;
    // 类方法
    public static void printHelloWorld()
    {
        System.out.println("Hello World");
        System.out.println("Hello World");
    }
    // 对象方法
    public void printPass()
    {
        if(score >= 60) System.out.println("pass");
        else System.out.println("no pass");
    }
}

结果:

2.内存原理

3.main函数

1.main方法是一个类方法

2.main方法由虚拟机中的一个类调用Test在进行调用main

3.main小括号中的字符串用来传递某些数据。

4.类方法的应用

测试类:

package suziguang_d3_util;
public class Test {
    public static void main(String[] args) {
        // 1.登录界面要4个验证码
        System.out.println(My_Util.creatCode(4));
        // 2.注册界面要6个验证码
        System.out.println(My_Util.creatCode(6));
    }
}

My_Util类:

package suziguang_d3_util;
import java.util.Random;
public class My_Util {
    public static String creatCode(int n)
    {
        String code = "";
        Random r = new Random();
        String data = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
        for(int i = 0; i < n; i++)
        {
            int index = r.nextInt(data.length());
            code += data.charAt(index);
        }
        return code;
    }
}

输出结果:

使用工具类的优点:

  • 不用创建对象,节约内存
  • 代码复用

建议:为了让工具类不可再创建对象,可以对 构造函数进行私有


EOF

相关文章
探索 Java 静态变量(static)的奥秘
本文深入探讨了Java中的静态变量(`static`),从初印象、使用场景、访问方式、初始化、线程安全、优缺点到最佳实践,全面解析其特性和应用场景。静态变量属于类而非实例,适用于共享数据、定义全局常量和工具类中的变量。它在类加载时初始化,生命周期贯穿整个程序运行。然而,多线程环境下需注意线程安全问题,可通过`synchronized`或原子类解决。优点包括共享数据方便和提高性能,但也存在线程安全和代码耦合度增高的缺点。最佳实践建议谨慎使用、保证线程安全、遵循命名规范并封装访问。掌握静态变量的正确用法,能让你的代码更加高效简洁。
197 11
java中的static关键字
欢迎来到瑞雨溪的博客,博主是一名热爱JavaScript和Vue的大一学生,致力于全栈开发。如果你从我的文章中受益,欢迎关注我,将持续分享更多优质内容。你的支持是我前进的动力!🎉🎉🎉
80 8
Java 中的静态(static)
【10月更文挑战第15天】静态是 Java 语言中一个非常重要的特性,它为我们提供了一种方便、高效的方式来管理和共享资源。然而,在使用过程中,我们需要谨慎考虑其优缺点,以确保代码的质量和可维护性。
Java 面试高频考点:static 和 final 深度剖析
本文介绍了 Java 中的 `static` 和 `final` 关键字。`static` 修饰的属性和方法属于类而非对象,所有实例共享;`final` 用于变量、方法和类,确保其不可修改或继承。两者结合可用于定义常量。文章通过具体示例详细解析了它们的用法和应用场景。
73 3
在Java中,关于final、static关键字与方法的重写和继承【易错点】
在Java中,关于final、static关键字与方法的重写和继承【易错点】
74 5
|
6月前
|
Java关键字 —— static 与 final 详细解释!一看就懂 有代码实例运行!
这篇文章详细解释了Java中static和final关键字的用法,包括它们修饰类、方法、变量和代码块时的行为,并通过代码示例展示了它们的具体应用。
415 0
Java关键字 —— static 与 final 详细解释!一看就懂 有代码实例运行!
Java之静态(static)与实例(instance)
Java之静态(static)与实例(instance)
158 5
【Java基础面试四十一】、说一说你对static关键字的理解
这篇文章主要介绍了Java中static关键字的概念和使用规则,强调了类成员与实例成员的区别及其作用域的限制。
【Java基础面试四十三】、 static和final有什么区别?
由于网络原因,我无法获取到您提供的链接内容。如果需要我解析该网页,请确保链接有效并重试,或者提供其他问题,我会尽力帮助您。
【Java基础面试四十二】、 static修饰的类能不能被继承?
这篇文章讨论了Java中static关键字修饰的类是否可以被继承,解释了静态内部类的概念、规则以及如何实例化。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等