本文目录
java 抽象类定义
package baiduwenti;abstract class MyAnimal {//抽象类private String type; MyAnimal(String str){//构造方法type = str;}public abstract void voice();//抽象方法}class MyDog extends MyAnimal{//MyDog继承MyAnimal private String name; MyDog(String str,String n) {//构造方法super(str);name = n;// TODO Auto-generated constructor stub} public void voice(){//实现抽象类中的抽象方法System.out.println("the voice of a dog.");}}class MyCat extends MyAnimal{private String name; MyCat(String str,String n){super(str);name = n;}public void voice(){System.out.println("the voice of cat.");}}public class Cx3110{public static void main(String args){MyAnimal dog = new MyDog("狗","旺财");//创建一个MyAnimal对象,并用MyDog实例化dog.voice();//调用方法MyAnimal cat = new MyCat("猫","旺运");//创建一个MyAnimal对象,并用MyCat实例化 cat.voice();}}
1, 定义抽象类person,包含属性name,sex,birthday和其他必要的属性,定义计算年龄的
import java.util.Date;public abstract class Person { private String name; private String sex; private Date birthday; public Person(String name, String sex, Date birthday) { this.name = name; this.sex = sex; this.birthday = birthday; } abstract int age();}abstract int age();为抽象类中的抽象方法,实现类根据具体要求实现此方法,比如说是需要得出虚岁还是实岁。
C# 子类实现抽象类属性
抽象类 表明这个类是完全抽象的,不能被实例化,gsclass = new gsclass() 试试就明白了,
抽象类可以定义字段,属性,包含有实现的方法吗
抽象类中可以有非抽象方法(此种方法可以有具体的实现),但抽象类中的抽象方法(带abstract)的,则不可以有实现体。而且抽象类,不可以有具体的实例。比方水果是一个抽象类,你不能去建一个水果的对象。但你可以去建一个苹果的类去继承水果类,再去定义一个苹果的对象。即抽象类只是提供一个模板,一个契约,而其所带的具体实现方法,一般是表示其派生出来的子类,都这个相同的方法功能。否则完全可以不写具体的实现。