public class Example02 { Student1 stu1=new Student1();//声明stu1对象并进行实例化 Student1 stu2=null;//声明stu2对象,但不进行实例化 stu1.name="小明"; } class Student1{ String name; int age; void read(){ System.out.println("大家好,我是"+name+",年龄"+age); } }
时间: 2023-03-29 13:02:27 浏览: 93
这是一个关于 Java 编程的问题,我可以回答。这段代码中,声明了一个名为 Example02 的公共类,其中实例化了一个名为 stu1 的 Student1 对象,并将其 name 属性设置为 "小明"。同时,声明了一个名为 stu2 的 Student1 对象,但没有进行实例化。在 Student1 类中,定义了 name 和 age 两个属性,以及一个 read() 方法,用于输出学生的姓名和年龄。
相关问题
Student stu等于new student() 在java中是什么意思?
这段代码是Java中的对象创建语法。`Student stu`是定义了一个名为`stu`的变量,它的类型是`Student`。`new Student()`是通过`Student`类的构造函数创建了一个`Student`类型的实例对象,并将该对象的引用赋值给了`stu`变量。这样就完成了一个对象的创建和初始化,并且可以使用`stu`变量来访问该对象的属性和方法。例如:
```
Student stu = new Student();
stu.setName("张三");
stu.setAge(18);
System.out.println(stu.getName() + "的年龄是" + stu.getAge());
```
这段代码创建了一个名为`stu`的`Student`对象,并设置了它的姓名和年龄属性,最后输出了该对象的姓名和年龄。
已知Student类定义如下: public class Student { int id=1; static int totals=0; static{ System.out.println("Student类加载,totals="+totals); } Student(){ id++; totals++; System.out.printf("一个学生被实例化,id=%d,totals=%d\n",id,totals); } } 执行如下程序: public class Test { public static void main(String[] args) { System.out.println("main方法开始"); Student stu1=new Student(); System.out.println("stu1实例化结束"); Student stu2=new Student(); System.out.println("stu2实例化结束"); } } 请问static块执行几次(1、2、3……)? 执行完毕时,stu1的id和totals分别是多少?
static块只会在类加载时执行一次,因此输出语句只会执行一次,输出结果为: Student类加载,totals=0
stu1的id为2,因为在构造函数中先执行了id++,再执行了totals++,所以id的初始值为1,加1后为2。stu1实例化结束后,totals的值为1。
stu2的id为2,因为每次实例化时,都会执行一次id++,totals的值为2,因为在构造函数中每次实例化都会执行一次totals++。stu2实例化结束后,totals的值为2。
因此输出结果为:
main方法开始
Student类加载,totals=0
一个学生被实例化,id=2,totals=1
stu1实例化结束
一个学生被实例化,id=2,totals=2
stu2实例化结束
阅读全文