首页 > 其他分享 >static关键字

static关键字

时间:2022-11-21 19:22:07浏览次数:39  
标签:静态方法 System 关键字 static println public out

Static关键字

1.静态属性

public class Student {
    private static int age;//静态的变量
    public double score;//非静态的变量

    public static void main(String[] args) {
        Student stu = new Student();
        System.out.println(Student.age);//静态变量可以直接通过类名访问
        System.out.println(Student.score);//非静态变量不可以通过类名访问,运行时这里会报错
        System.out.println(stu.score);//通过对象访问属性
        System.out.println(stu.age);//通过对象访问属性

    }
}

静态属性对于类而言,在内存中只有一个,可以被类中的所有实例共享,当有许多类需要对这个属性进行操作时,可以使用静态属性

2.静态方法

package study;

public class Student {
    public void run(){
        go();//非静态方法可以调用静态方法
    }
    public static void go(){

    }

    public static void main(String[] args) {

        new Student().run();//非静态方法需要对象去调用
        Student.go();//静态方法可以通过类名直接调用
    }
}

  • 静态方法可以调用静态方法
  • 非静态方法可以调用静态方法
  • 静态方法不可以调用非静态方法
  • 静态方法是和类一起加载的

3.静态代码块

package study;

public class Person {
    //2.第二执行,一般用来赋初值
    {
        //匿名代码块
        System.out.println("匿名代码块");
    }
    //1.首先执行,只执行一次
    static {
        //静态代码块
        System.out.println("静态代码块");
    }
    //3.最后执行
    public Person(){
        System.out.println("构造方法");
    }

    public static void main(String[] args) {
        Person person1 = new Person();
        System.out.println("++++++++");
        Person person2 = new Person();

    }
}

image-20221121191016375

4.静态导入包

import static java.lang.Math.PI;
import static java.lang.Math.random;
public class Study {
    public static void main(String[] args) {
//        System.out.println(Math.random());
//        System.out.println(Math.PI);
        System.out.println(random());//可以直接调用Math类里的方法和常量
        System.out.println(PI);
    }
}

5.final关键字

  • 可以用来修饰常量
  • 被final修饰的类不能被继承

标签:静态方法,System,关键字,static,println,public,out
From: https://www.cnblogs.com/Jinx8823/p/16912921.html

相关文章

  • EXCEL 搜索关键字,提取对应行的某列值。使用说明
    1、EXCEL搜索关键字,提取对应行的某列值:=VLOOKUP(关键字,搜索范围,对应列值,0)/*关键字选择单元格,搜索范围使用$A$1:$B$2样式可以避免拖拽时变值,对应列值为选择范围内从左......
  • PHP中self与static区别和联系
    ​ PHP官方也说过,大概意思是说self调用的就是本身代码片段这个类,static-PHP5.3加进来的只得是当前这个类,有点像$this的意思,static调用的是从堆内存中提取出来,访问的是当......
  • 为什么你的static_assert不能按预期的工作?
    static_assert是c++11添加的新语法,它可以使我们在编译期间检测一些断言条件是否为真,如果不满足条件将会产生一条编译错误信息。使用静态断言可以提前暴露许多问题到编译阶......
  • static-静态方法和工具类
    什么叫静态方法特点和调用方式工具类定义:帮助我们做一些事情的,但是不描述任何事物的类已经学习过的类工具类的使用规则练习实操类--ArrayUtilpack......
  • java——异常——throws关键字:异常处理的第一种方式,交给别人处理
                                                      声明异......
  • java——异常——抛出throw关键字
                                               抛出throw关键字throw关......
  • MySQL高级知识——Order By关键字优化
    在使用orderby时,经常出现Usingfilesort,因此对于此类sql语句需尽力优化,使其尽量使用Usingindex。1.准备1.1创建test表。droptableifexiststest;createtabletest(......
  • New关键字
    1、创建对象2、隐藏从父类那里继承过来的同名成员,隐藏的后果就是子类调用不到父类的成员了。子类名称和父类名称写的一样的时候,你就调用不到父类的成员了,如果你故意这么......
  • this关键字
    this关键字1、代表当前这个类2、调用另一个全参的构造函数publicStudent(Stringname,intage,chargender){//给当前这个类的对象每个属性依......
  • MySQL的on duplicate key update关键字的作用
    1.问题引入这个关键字是在看项目代码的时候,看到SQL语句在批量插入数据的时候看到了这个关键字,于是就学习了一下这个关键字的作用。2.说明作用onduplicatekeyupdate......