关键词static的作用和用法,static关键字的作用域

  关键词static的作用和用法,static关键字的作用域

  如何解决写爬虫IP受阻的问题?立即使用。

  静态关键字的三个功能:

  (推荐教程:java入门)

  静态静态成员变量

  静态静态成员方法

  静态静态代码块

  分析:

  1.静态静态成员变量

  注意:如果一个成员变量使用了static关键字,那么这个变量就不再属于对象本身,而是属于它的类。多个对象共享相同的数据。

  代码示例:

  让我们构建一个学生类,设置两个静态成员变量,room Classroom和idCounter。在main()方法中实例化两个学生对象,一个和两个,并且只将值赋给一个对象的房间。打印出来的时候,你会发现two.room和one.room的价值是一样的。

  可以看出,因为room使用了static关键字,所以它属于类,不再属于对象本身,可以被多个对象共享。因为idCounter是一个静态变量,它只会被初始化一次,所以每创建一个对象id,它就加1。

  公共类Demo01StaticField {

  公共静态void main(String[] args) {

  学生一=新生(郭靖,19);

  学生二=新生(黄蓉,16);

  One.room=101教室;

  system . out . println( name: one . getname(),age:

  One.getAge(),教室: one.room

  ,学号: one . getid());//姓名:郭靖,年龄:19,教室:101,学号:1。

  system . out . println( name: two . getname()

  ,年龄: two.getAge(),教室: two.room

  ,学号: two . getid());//姓名:黄蓉,年龄:16,教室:101,学号:2。

  }

  }

  公共课学生{

  private int id//学生ID

  私有字符串名称;//名称

  私人年龄;//年龄

  静弦室;//教室

  private static int id counter=0;//学生ID计数器,每当创建新对象时,计数器

  公共学生(){

  this.id=idCounter

  }

  公共学生(字符串名称,整数){

  this.name=name

  this.age=年龄;

  this.id=idCounter

  }

  public int getId() {

  返回id;

  }

  public void setId(int id) {

  this.id=id

  }

  //name和age的Getter和Setter方法同上id,省略。

  }2.静态静态成员方法

  解释:同样,如果一个成员方法使用了static关键字,那么它就变成了一个静态方法。静态方法不属于对象,而是属于类。

  静态修改成员方法的优点:避免了新建对象的繁琐和资源消耗,可以被【类名】直接使用。方法名称]。

  代码示例:

  用成员变量、静态成员变量、成员方法和静态成员方法创建一个新的Myclass类。我们可以看到成员方法可以访问成员变量和静态变量。但是静态方法只能访问静态变量,不能访问非静态变量,不能使用这个关键字。使用这个类时,通过static关键字,您可以通过类名直接使用它,而无需创建对象。对于该类中的静态方法,可以省略类名。

  公共类Demo02StaticMethod {

  公共静态void main(String[] args) {

  //非静态方法使用:1。首先创建对象

  my class obj=new my class();

  //2.然后就可以使用没有static关键字的方法了。

  obj . method();

  //对于静态方法,可以通过对象名或类名调用。

  obj . method static();//正确,不推荐。这种写法也会被翻译成“类名。静态方法名”。

  my class . method static();//正确,推荐

  //对于该类中的静态方法,可以省略类名。

  my method();

  demo 02 static method . my method();//完全等效

  }

  公共静态void myMethod(){

  System.out.println (own method!);

  }

  }

  公共类MyClass {

  int num//成员变量

  static int numStatic//静态变量

  //成员方法

  公共void方法(){

  System.out.println(这是一个普通的成员方法。);

  //成员方法可以访问成员变量

  system . out . println(num);

  //成员方法可以访问静态变量

  system . out . println(numStatic);

  }

  //静态方法

  公共静态void methodStatic(){

  这是一个普通的静态方法。);

  //静态方法可以访问静态变量

  system . out . println(numStatic);

  //Static不能直接访问非static [key]

  //system . out . println(num);//写错了

  //静态方法中不能使用该关键字

  //system . out . println(this);//写错了

  }

  }(学习视频推荐:java课程)

  3.静态静态代码块

  格式:

  类公共类名{

  静态{

  //静态代码块的内容

  }

  }特点:第一次使用这个类时,静态代码块只执行一次,可以用来优化程序性能。大多数情况下,我们会把一些只会执行一次的初始化操作(初始化静态资源)的代码放在静态代码块中,比如加载配置文件等。注意:静态内容总是优先于非静态内容,所以静态代码块在构造方法之前执行。

  公共类Demo04StaticCode {

  公共静态void main(String[] args) {

  人一=新人();

  system . out . println( * * * * * * * * * * * * * * * * * * * * * );

  //无论创建多少个人对象,静态代码块都只执行一次。

  人二=新人();

  }

  }

  公共类人员{

  静态{

  System.out.println(静态代码块执行!);

  }

  公共人物(){

  System.out.println(构造函数执行!);

  }

  }执行结果:

  以上是static关键字三个功能的详细介绍。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: