Java
文章平均质量分 58
Java
韶玦
这个作者很懒,什么都没留下…
展开
-
static方法中不能使用this关键字
在程序最开始启动(JVM初始化)的时候,就会为static方法分配一块内存空间,成为静态区,属于这个类。而非static方法,必须在类实例化的时候,才会给分配内存空间,在实例化对象的时候JVM在堆区分配一个具体的对象,this指针指向这个对象。也就是说,this指针是指向堆区中的类的对象,而static域不属于this指向的范围所在,所以不能调用。super代表子类对父类满参构造函数的初始化,也是需要产生对象才可以使用但是考虑到虚拟机加载顺序为先加载类,当被实例化才产生对象。转载 2023-04-15 09:10:07 · 235 阅读 · 0 评论 -
错误:Cannot make a static reference to the non-static field-_Debug_debug
之所以会报Cannot make a static reference to the non-static field email这个错,因此,这个东西解决起来特别简单,第一种,可以把变量改成静态的。第二种,先实例化对象,然后使用对象名.变量名来调用即可。因为,非静态的变量是依赖于对象存在的,对象必须实例化之后,它的变量才会在内存中存在。是因为在静态方法中,不能直接访问非静态成员(包括方法和变量)。转载 2023-04-10 10:55:30 · 593 阅读 · 0 评论 -
Java堆、栈和常量池-longxiaoyan
d1为对象引用,存在栈中,对象(new BirthDate())存在堆中,其中d,m,y为局部变量存储在栈中,且它们的类型为基础类型,因此它们的数据也存储在栈中。对于字符串:其对象的引用都是存储在栈中的,如果是编译期已经创建好(直接用双引号定义的)的就存储在常量池中,如果是运行期(new出来的)才能确定的就存储在堆中。2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。栈内存中的局部变量随着方法的消失而消失。转载 2023-04-10 10:36:35 · 215 阅读 · 0 评论 -
windows10配置Java8环境变量-酸辣粉_2329
由于win10的不同,当选中Path变量的时候,系统会很方便的把所有不同路径都分开了,不会像win7或者win8那样连在一起。打开cmd,输入java,出现一连串的指令提示,说明配置成功了。如果存在CLASSPATH变量,选中点击Edit。3. 新建/修改 CLASSPATH 变量。2. 新建JAVA_HOME 变量。如果没有,点击New... 新建。变量名:JAVA_HOME。新建JAVA_HOME变量。转载 2023-04-09 22:15:26 · 422 阅读 · 0 评论 -
java 多个版本共存java8和java11-chestnut栗子
本地环境是 java8,即java 1.8版本,需要用到java11,并且可以在两个版本之间切换查询java版本方法:① win+r 进入命令行② 输入 cmd打开③ 输入 java -version 查询④ 输入 javac -version 查询。转载 2023-04-09 21:36:58 · 764 阅读 · 0 评论