1.创建一个text类,包含有一个public权限的int型成员变量与一个char类型的成员变量,观察在main方法中的初值。
class Text{
public int a;
public char b;
}
public class Test9 {
public static void main(String[] args){
Text text=new Text();
System.out.println(text.a);
System.out.println(text.b);
}
}
结果:0
/u0000
2.编写一个程序,展示无论你创建了某个特定类的多少个对象,这个类的某个特定的得static成员变量只有一个属性。
class Student{
private static String country;
private String name;
private int age;
//使用static定义的方法,直接通过类名称访问。
public static void setCountry(String c) {
country=c;
}
public String getName(){
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge(){
return age;
}
public void setAge(int age) {
this.age = age;
}
public void print(){
System.out.println("国籍:"+country+",姓名:"+this.name+",年龄:"+this.age);
}
}
public class Test10 {
public static void main(String[] args){
Student s=new Student();
Student.setCountry("中国");
s.setName("张三");
s.setAge(18);
s.print();
}
}
修饰本类属性,称为静态属性(类属性),所有对象共享此属性值;
非static属性称为成员变量或对象属性,每个对象都有此属性且值都不一样。
要描述类似国家这种共享属性,可以使用static修饰属性。静态属性一般通过类名直接调用,所有该类对象共享此属性值。
3.一个斐波那契数列是由数字1、1、2、3、5、8、13、21等等组成的,其中每个数字(从第三个起)都是前两个数字的和。创建一个方法,接受一个整数参数,并显示从第一个元素开始总共由该参数所构成的所有斐波那契数字。
public class Test11 {
public static void main(String[] args) {
for (int i = 1; i < 10; i++) {
System.out.println(Fibonacci(i));
}
}
public static int Fibonacci(int num){
if(num1||num2){
return 1;
}else{
return Fibonacci(num-1)+Fibonacci(num-2);
}
}
}
4.创建一个带默认构造方法(即无参构造)的类,在构造方法中打印一条消息“Hello Constructer”;再为这个类添加一个重载构造方法,令其接收一个字符串参数,并在这个有参构造方法中把“Hello Constructer”和接受的参数一起打出来。
class Child{
private String name;
public Child(){
System.out.println(“Hello Constructer”);
}
public Child(String n){
this();//调用本类无参构造
name=n;
}
public void print(){
System.out.println("姓名:"+name);
}
}
public class Test12 {
public static void main(String[] args){
Child c=new Child();
Child c1=new Child(“李四”);
c.print();
c1.print();
}
}