Java子类的构造方法与多态

(1) 可以使用父类中数据域的set方法为其设置初值;
(2) 使用super()调用父类的无参构造方法或者super(parameters)调用与参数匹配的父类的构造方法,且super()或者super(parameters)必须出现在子类构造方法第一行,这是显式调用父类构造方法的唯一方式。
     public Circle(double radius,String color,boolean filled)
     {
          super(color,filled);
          this.radius = radius;
     }
(3) 如果子类的构造方法中无内容
     public classname()
     {
     }
     或者
     public classname(parameters)
     {
     }
     则相当于
     public classname()
     {
          super();
     }
     或者
     public classname(parameters)
     {
          super();
     }


(4) 调用父类的方法
     super.方法名(参数);
     
     public void printCircle()
     {
          System.out.println("The circle is created " + super.getDateCreated() + " and the radius is  " + radius);
     }

(5) 覆盖方法
     子类从父类中继承方法,如果需要修改父类中方法的实现,称为方法覆盖

     public class Circle4 extends GeomerticObject1
     {
          public String toString()
          {
               return super.toString() + "\nradius is " + radius;
          }
     }

     当且仅当方法是可访问的时候,才能被覆盖。因为私有方法在类本身以外是不能访问的,所以不能覆盖。
     静态方法也能被继承,但是不能被覆盖。

(6) 对象类object和toString()方法
     java中的每个类都源于java.lang.Object类,如果定义一个类时没有指定继承性,则这个类的父类就被默认为Object。
public class classname                                     public class classname extends Object
{                                            等价于              {
}                                                                    }

(7) 对象转换
         子类对象都可以转换成父类对象,因为子类对象的实例就是父类对象的实例
          父类对象转换为子类对象时必须强制转换
          Classname obj = (subclassname)o;

(8) instanceof 运算符 用于判断对象是否是某个类的实例

     public static void xxx(Object object)
     {
          if(object instanceof XX1)          //如果对象是XX1 的实例
          {
          }
          else if (object instanceof XX2)  //如果对象是XX2 的实例
          {
          }
     }

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值