肖鸿昌建筑网站,网络营销有哪些手段,中国营销策划第一人,网站做app用什么语言文章目录 1. 抽象类概述2. 抽象类特点3. 抽象类的成员特点4. 抽象类猫狗应用 1. 抽象类概述 在Java中#xff0c;一个没有方法体的方法应该定义为抽象方法#xff1b;而类中如果有抽象方法#xff0c;该类必须定义为抽象类。 2. 抽象类特点 1. 抽象类和抽象方法必须使用abst… 文章目录 1. 抽象类概述2. 抽象类特点3. 抽象类的成员特点4. 抽象类猫狗应用 1. 抽象类概述 在Java中一个没有方法体的方法应该定义为抽象方法而类中如果有抽象方法该类必须定义为抽象类。 2. 抽象类特点 1. 抽象类和抽象方法必须使用abstract关键字修饰。
public abstract class 类名{};public abstract void eat(); 2. 抽象类中不一定有抽象方法有抽象方法的类一定是抽象类。 3. 抽象类不能实例化。抽象类如何实例化呢参照多态的方式通过子类对象实例化这叫抽象类多态。 4. 抽象类的子类要么重写抽象类中的所有抽象方法要么是抽象类。
public abstract class Animal {public abstract void eat();public void sleep(){System.out.println(在睡觉);}
}public class Cat extends Animal{Overridepublic void eat() {System.out.println(猫吃鱼);}
}public class Demo {public static void main(String[] args) {Animal anew Cat();//编译看左边执行看右边a.eat(); //猫吃鱼a.sleep();//在睡觉}
}3. 抽象类的成员特点 1. 成员变量可以是常量也可以是变量。 2. 构造方法有构造方法但是不能实例化。它用于子类访问父类数据的初始化。 3. 成员方法可以有抽象方法限定子类必须完成某些动作。也可以有非抽象方法用于继承以提高代码复用性。
4. 抽象类猫狗应用
public abstract class Animal {private int age;private String name;public Animal(){}public Animal(String name,int age) {this.name name;this.age age;}public int getAge() {return age;}public void setAge(int age) {this.age age;}public String getName() {return name;}public void setName(String name) {this.name name;}public abstract void eat();
}public class Cat extends Animal{public Cat(){}public Cat(String name,int age){super(name,age);}Overridepublic void eat() {System.out.println(猫吃鱼);}
}public class Demo {public static void main(String[] args) {//这就是向上转型Animal anew Cat(加菲猫,5);System.out.println(a.getName() a.getAge()); // 输出加菲猫 5}
}