**JAVA学习中遇见的问题**
项目场景:
实训初学JAVA的记录
问题描述:
第一次接触面向对象的时候纠结方法跟类的创建问题已经成员变量,还有局部变量的问题,记录一下,
public class Oop {
String name;
String sex;
int age;
public void showInfos(){
System.out.println("姓名为"+name+",性别为"+sex+"年龄为:"+age);
}
===============================================================
public class Oop {
String name;
String sex;
int age;
public void showInfos(){
String name="咕咕";
String sex="男";
int age=12;
System.out.println("姓名为"+name+",性别为"+sex+"年龄为:"+age);
}
============================================================================
public class Test {
public static void main(String[] args) {
Oop oop=new Oop();
oop.name="张三";
oop.age=18;
oop.sex="男";
oop.showInfos();
}
}
# 原因分析:
当在方面里面直接定义String name 还有age时候,作为局部变量的时候没法初始化。此时System.里name和sex报错
# 解决方案:
当你给局部变量初始化"咕咕“ 15之后,局部变量的优先级高于成员变量,所以是优先生成的局部变量初始化的值。控制台会输出”咕咕男15"
证明局部变量的优先级是高于成员变量的