猿问

java的一个小小问题,有没有人能帮我看看

class A
{
    int age;
}
class B extends A
{
    String name;
}
class C extends B
{
    age = 3;
    name = 小明;
    public void speak(){
         System.out.println(name+"今年的岁数为:"+age);
    }    
}
class Demo
{
    public static void main(String[] args){
         C c = new C();
         c.speak();
    }
}
为什么会显示需要标识符?


Neilro3534034
浏览 1357回答 3
3回答

lvanli

name = 小明;这行代码暂且看做为初始化。java中不允许直接在class里面写代码。要想做到这种初始化可以使用初始化块的方法。初始化块的写法就是在要写的初始化代码两端加上{}。具体代码如下:注:由于小明是字符串,需要加""进行修饰。{    age = 3;    name = "小明";}

tanhouyusheng

age = 3;    name = 小明;明显是不对啊

yanrun

因为C类中的age和name没有申明变量的类型。改成int age = 3; String name = "小明";就可以了,还有就是,name是字符串类型,变量值的两边需要有双引号
随时随地看视频慕课网APP

相关分类

Java
我要回答