当前位置: 首页 > news >正文

天津建设工程信息网站网页设计代码 link rel

天津建设工程信息网站,网页设计代码 link rel,做电子画册的网站,360网站seo怎么做1.继承 1.1 定义 让类与类之间产生子父类关系,有了继承性之后,子类就获取到了父类中声明的所有属性和方法。 1.2 优点 继承的出现减少了代码冗余,提高了代码的复用性。继承的出现,更有利于功能的扩展。继承的出现让类与类之间…

1.继承

1.1 定义

让类与类之间产生子父类关系,有了继承性之后,子类就获取到了父类中声明的所有属性和方法。

1.2 优点

  1. 继承的出现减少了代码冗余,提高了代码的复用性。
  2. 继承的出现,更有利于功能的扩展。
  3. 继承的出现让类与类之间产生is-a关系,为多态的使用提供了前提。
  4. 继承描述事物之间的所属关系,可见父类更通用、更一般,子类更具体。

1.3 继承特点

  1. Java只支持单继承(针对于类)(一个父类可以声明多个子类,但是一个子类只能有一个父类),不支持多继承
  2. Java支持多层继承,可以划分为直接父类和间接父类。

1.4 注意事项

  1. 子类只能继承父类的所有非私有成员。
  2. 子类不能继承父类的构造方法,但可以通过super关键字访问父类构造方法。

1.5 默认的父类

Java中声明的类如果没有显式声明其父类时,则默认继承于java.lang.Object类

2. super关键字

2.1 为什么需要super

  • super:代表对当前父类的引用
    在子类中需要调用父类中被重写的方法以及在子类中区分子类和父类同名的属性。

2.2 super可以调用的结构

2.2.1 属性和方法

子类继承父类以后,就可以在子类的方法或构造器中,调用父类中声明的属性或方法(满足封装性的前提下)。调用时,需要使用"super."的结构,表示调用父类的属性或方法。子类中重写了父类的方法或子父类中出现了同名的属性时,则必须使用"super."的声明,显式地调用父类被重写的方法或父类中声明的同名的属性。

2.2.2 构造器

  1. 子类继承父类时,不会继承父类的构造器,只能通过"super(形参列表)"的方式调用父类指定的构造器。
  2. "super(形参列表)"必须声明在构造器的首行。
  3. 在构造器的首行,super和this关键字只可以出现一个。
  4. 如果在子类构造器的首行既没有显式调用"this(形参列表)“,也没有显式调用"super(形参列表)”,则子类此构造器默认调用"super()",即调用父类中空参的构造器。
  5. 结合3和4可以得到结论:子类的任何一个构造器中,要么会调用本类中重载的构造器,要么会调用父类的构造器,只能是这两种情况之一。
  6. 由5可以得到结论:一个类中声明有n个构造器,最多有n-1个构造器中使用了"this(形参列表)“,则剩下的那一个一定使用"super(形参列表)”。

区别

  1. this既可以调用本类成员变量,也可以调用父类成员变量,而super只可以调用父类的成员变量
  2. this调用本类构造方法,super调用父类构造方法
  3. this既可以调用本类成员方法,也可以调用父类成员方法,而super只可以调用父类的成员方法

练习题

public class demo34 {public static void main(String[] args){Cat c1 = new Cat("白色",4);System.out.println(c1.getColor() + " " + c1.getLeg());c1.eat();c1.catMouse();System.out.println("-----------------------");Dog d1 = new Dog("黑色",4);System.out.println(d1.getColor() + " " + d1.getLeg());d1.eat();d1.lookHome();}
}/*
猫狗练习
属性:毛的颜色,腿的个数
行为:吃饭
猫特有行为:抓老鼠
狗特有行为:看家*/class Animals{private String color;private int leg;public Animals(){}public Animals(String color,int leg){this.color = color;this.leg = leg;}public void setColor(String color) {this.color = color;}public String getColor() {return color;}public void setLeg(int leg) {this.leg = leg;}public int getLeg() {return leg;}public void eat(){System.out.println("吃饭");}
}class Cat extends Animals{public Cat(){}public Cat(String color,int leg){super(color, leg);}public void eat(){System.out.println("猫吃鱼");}public void catMouse(){System.out.println("抓老鼠");}
}class Dog extends Animals{public Dog(){}public Dog(String color,int leg){super(color, leg);}public void eat(){System.out.println("狗吃肉");}public void lookHome(){System.out.println("看家");}
}

3.方法的重写(overwrite/override)

3.1 为什么需要方法的重写

子类在继承父类以后,就获得了父类中声明的所有的方法。但是,父类中的方法可能不太适用于子类。即子类需要对父类继承过来的方法进行覆盖、覆写的操作(定义)。

3.2 方法重写应遵循的规则

  1. 父类被重写的方法与子类重写的方法的方法名和形参列表必须相同。
  2. 子类重写的方法的权限修饰符不小于父类被重写的方法的权限修饰符。注意:子类不能重写父类中声明为private权限修饰符的方法。
  3. 父类被重写的方法的返回值类型是void,则子类重写的方法的返回值类型必须是void。
  4. 父类被重写的方法的返回值类型是基本数据类型,则子类重写的方法的返回值类型必须与被重写的方法的返回值类型相同。
  5. 父类被重写的方法的返回值类型是引用数据类型(),则子类重写的方法的返回值类型可以与被重写的方法的返回值类型相同或是被重写的方法的返回值类型的子类
  6. 子类重写的方法抛出的异常类型可以与父类被重写的方法抛出的异常类型相同,或是父类被重写的方法抛出的异常类型的子类。
http://www.yayakq.cn/news/738223/

相关文章:

  • 上市设计网站新零售平台公司有哪些
  • 怎样分析网站做seo石家庄外贸公司网站设计公司
  • 南充公司做网站大良营销网站建设服务
  • 北京高端网站建越秀网站建设策划
  • 营销网站优点十大网站app软件
  • 建设银行网站用户密码找回铜陵网站建设维护
  • 抚顺网站建设7113自己做淘宝优惠券网站
  • 网站免费推广策划方案产品包装设计公司网站
  • 郑州网站建设的公司哪家好包头企业网站建设公司
  • 营销型网站建设的优缺点上海高玩seo
  • 完成网站建设的心得体会长春市建设厅网站
  • 沈丘做网站yooker网站建设加后台
  • 北京怎么做网站推广建设银行钓鱼网站
  • 国际化网站商城的网站统计如何做
  • 网站的管理系统wordpress文章不显示摘要
  • 招聘app岳阳seo招聘
  • 广告公司网站设计策划书郑州网站设计专家
  • 高密网站制作如何推广app让别人注册
  • 360提交网站百度账号申请注册
  • 网站论坛建设方案网站公司做网站
  • 公司网站招聘模板建站公司上海
  • 梧州网站平台建设公司济南做网站知识
  • 象山县住房和城乡建设局网站代理登陆网站
  • 自己建设一个网站zu97重庆建设信息网站查询
  • 小说网站建设费用红河做网站
  • 网站建设优化推广教程价格查询网
  • 做电气设计有哪些好的网站网站设计公司哪里好
  • 三亚高端服务网站wordpress实现专题
  • 凡科网站免费注册寮步做网站
  • 什么样的网站需要数据库建设工程资讯哪个网站好