Java 的普通函数中可以用static修饰变量吗,就像c++一样,或者matlab的persistent变量?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 的普通函数中可以用static修饰变量吗,就像c++一样,或者matlab的persistent变量?相关的知识,希望对你有一定的参考价值。

不可以,static用法
1,修饰类或接口 属性
2,修饰类或接口方法
3,修饰类中静态代码块。
不能修饰方法内的变量。
参考技术A 函数中的static变量是没有意义的,所以不能的。 参考技术B 这个必须可以的呀

JAVA中static,this,extends,super,package

static关键字:

static可以用来修饰方法和成员变量,由static修饰的成员变量的值在该类所有实例化出的对象中通用

方法:方法分为成员方法(实例方法)和类方法(由static修饰,又叫做静态方法),可以在实例方法中操作静态变量和实例变量,可以在类方法中操作类变量

变量:变量分为成员变量和局部变量(定义在方法,语句中作用范围小),成员变量又分为类成员变量(有static修饰)和和实例成员变量

 

this关键字:

 1.this是当前类的内部对象,所以和类的外部对象(一般来说在new一个新对象时,新new出的对象为外部对象)访问类成员变量和方法的规则一致,
 语法:this.<变量名>和this.<方法名>。
 2.this只能在当前类的内部使用,但是,不能在static修饰的方法(即类方法)中使用。
 3.this在实例方法中通常被省略,除非实例方法中包含与成员变量同名的局部变量时,
 访问成员变量需要使用this。
 4.当一个类中包含多个构造方法的时,如果其中一个构造方法要调用另外的构造方法时使用如
public class This{

  public This(){

  this("白色");    //通过this在无参的构造方法里调用有参的构造方法

  }

  public This(String color){

  this.color = color;    //将局部变量通过this赋值给成员变量

  System.out.println("" + color);

  }

}

extends关键字:

extends继承,在子类中通过class<子类>extends<父类>来获取父类中已有的变量和方法,从而提高代码的复用性类的继承

 优点:
 1、提高了代码的复用性
 2、增加类与类之间的关系,让类呈现不同的形态,这也是Java三大特性之一多态的表现
 Java继承规则:
 一个Java类最多只能继承一个父类,(单继承)
 但是java支持多重继承
方法重写与变量的隐藏:

在子类继承父类方法的基础上若要更新子类的方法,则进行方法的重写:

方法名相同,形参列表一致,返回值类型相同

若要进行变量的更新则需在子类中重新更改变量,父类的变量被隐藏
super关键字:

若要在以进行方法重写的子类中使用父类的方法则需使用关键字super

super.<方法名>
 子父类构造方法特点:
 1、在子类构造方法中第一行有一个隐式语句(super())
 2、子类中所有的构造函数默认都会访问父类无参构造函数,
 当子类构造函数有使用this调用其他构造函数(调用super()),则不用在引用父类构造方法
package关键字:

在一个工程中为了对类进行高效的管理引入了package包的概念,将同种功能类型的类放到同一个包中,包的起名规则:公司域名的倒写.工程名.功能名(包名一般小写)

若要引用不同包中的类则需关键词import引入:import + 包名(包名可在某一层次下用*代替如java.*)

import引入包时常在包名以下,注释以上的位置,包名在代码第一行

 



















以上是关于Java 的普通函数中可以用static修饰变量吗,就像c++一样,或者matlab的persistent变量?的主要内容,如果未能解决你的问题,请参考以下文章

java里final static常量怎么在UML图表示

在java语言中,静态变量和普通变量有啥区别?

C语言中static修饰的函数和普通函数的区别

java static 方法与普通方法区别

Java static 关键字

static变量以及方法