2020/04/15 点击:2825
例如,我们可以将动物类定义为抽象类: abstract class Animal { int legs = 0; abstract void makeSound();} makeSound方法也是抽象的,因为它在超类中没有实现。 我们可以从Animal类继承并为子类定义m
2020/04/15 点击:2139
接口是一个完全抽象的类,只包含抽象方法。 一些接口规范: -使用interface关键字定义。-只能包含静态最终变量。-无法包含构造函数,因为无法实例化接口。-接口可以扩展其他接口。
2020/04/15 点击:2254
使用implements关键字与类一起使用接口。 interface Animal { public void eat(); public void makeSound();} class Cat implements Animal { public void makeSound() { System.out.println("喵喵"); } public void eat() { System.out.prin
2020/04/15 点击:1770
将一种类型的值赋给另一种类型的变量称为类型转换。 若要将值强制转换为特定类型,请将该类型放在括号中,并将其放在值前面。 例子: int a = (int) 3.14;System.out.println(a);// 输出 3 上
2020/04/15 点击:1557
对于类,有两种类型转换。 向上转型 可以将子类的实例强制转换为其超类。 考虑下面的例子,假设猫是动物的一个子类。 Animal a = new Cat(); Java自动将Cat类型变量升级为动物类型。 向下
2020/04/15 点击:2166
匿名类是一种动态扩展现有类的方法。 例如,考虑拥有一个类机器: class Machine { public void start() { System.out.println("Starting..."); }} 创建Machine对象时,我们可以动态更改start方法。 public s
2020/04/15 点击:1669
修改仅适用于当前对象,而不适用于类本身。 因此,如果我们创建该类的另一个对象,start方法的实现将是该类中定义的对象。 class Machine { public void start() { System.out.println("Starting...")
2020/04/15 点击:1737
Java支持嵌套类;一个类可以是另一个类的成员。 创建一个内部类非常简单。只需在一个类中编写一个类。与类不同,内部类可以是私有的。一旦声明了内部类private,就不能从类外部的
2020/04/15 点击:1858
请记住,创建对象时,变量会存储对对象的引用。 因此,当使用相等测试运算符(==)比较对象时,它实际上比较的是引用,而不是对象值。 例子: class Animal { String name; Animal(String n
2020/04/15 点击:1639
每个对象都有一个预定义的equals()方法,用于语义相等测试。 但是,为了使它对我们的类有效,我们需要重写它并检查我们需要的条件。 生成equals()方法有一种简单而快速的方法