我不知道这是否是一种提问的错误方式,因为它实际上是我在另一个question提示的延续。
问题是,我想知道静态关键字做了什么,我想我明白了。我现在的问题是,我理解正确吗?我如何创建“狗”的实例?
class Dog {
static String form /* of all dogs */ = "Doggy-like";
static int quantity /* of dogs */ = 5;
String colour; /* of a specific dog */
String size; /* of a specific dog */
}
class Cat {
static String form /* of all cats */ = "Catty-like";
static int quantity/* of cats */ = 3;
String colour; /* of a specific cat */
String size; /* of a specific cat */
}
public class Animals {
public static void main(String[] args){
System.out.println("There are "+Cat.quantity+" cats.");
System.out.println("There are "+Dog.quantity+" dogs.");
/* EDIT: */
Dog Mike = new Dog();
Dog Pete = new Dog();
Cat Sushi = new Cat();
Cat Michael = new Cat();
Cat Pete = new Cat();
Dog.Mike.size="Big";
Dog.Mike.colour="Red";
Dog.Pete.size="Small";
Cat.Sushi.size="Small";
}
}
我也想知道那些皮特猫和狗之间是否存在冲突,以及是否正确定义它们的尺寸是正确的。在公共类动物中创建它,或者在它们各自的类(或其他类中)创建它是否有所不同?
答案 0 :(得分:2)
答案 1 :(得分:2)
是的,您已在类中定义了静态字段,并使用ClassName.fieldName在静态上下文中访问它。所以你是对的。
如果你想实例化Dog,你可以在你的主体中这样做:
Dog dog = new Dog();
默认情况下,我们得到不接受任何参数的构造函数。