继承

  • 面向对象编程(OOP)三大特征:继承,封装,多态

  • 目的:为了减少重复代码,避免复制粘贴

  • 创建父类Animal


public class Animal { private String name; //定义name属性
private String kind; //定义kind属性 private int age; //定义age属性 public void bite(){ //创建bite方法 System.out.println("咬咬咬");
} public void bark(){ //创建bark方法 System.out.println("叫叫叫")
} @Override
public String toString() {
return "Animal{" +
"name='" + name + '\'' +
", kind='" + kind + '\'' +
", age=" + age +
'}';
public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getKind() {
return kind;
} public void setKind(String kind) {
this.kind = kind;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
}
}
  • 创建子类Cat继承于父类Animal

public class Cat extends Animal{ }

  • MainClass中使用子类Cat

public class SecClass { public static void main(String[] args) { Cat cat = new Cat(); cat.setName("旺财");
cat.setAge(2);
cat.setKind("土狗"); System.out.println(cat);
cat.bark();
cat.bite();
}
}
  • 输出显示测试数据

  • 注释

    • 子类和父类是相对概念

    • 只有单继承,只能继承一个类

    • 子类可以继承父类所有的"public"修饰的属性和方法,"private"修饰的无法继承

    • main中通过访问public方法来访问private属性

    • 子类可以有独特的方法和属性,功能可以比父类更细致

    • 父类比子类范围更大

    • Java中所有的类都最终继承于Object类

  • 当子类Cat中想要新加方法时


public class Cat extends Animal{ public void wash(){ System.out.println("洗脸");
}
}
  • 当子类Cat想要修改(重写)父类方法时

    • 子类可以重写(Alt+Insert选第三个,快捷键ctrl+o)
    • 测试样例,bark()方法想要输出"喵喵喵"

public class Cat extends Animal{ @Override
public void bark() { System.out.println("喵喵喵"); }
}
  • 当子类Cat既想重写父类方法,又想在父类方法的基础上新加东西

public class Cat extends Animal{ public void bite() { super.bite();//→就是执行前面的bite"咬咬咬" System.out.println("猫咬人");//新添加的东西
}
}
  • 注释

    • super的作用在子类中调用从父类继承的方法
  • 测试样例

2019.3.13 Java的特性——继承的更多相关文章

  1. java三大特性--继承

    定义: 继承就是子类继承父类的特征和行为,使得子类具有父类的各种属性和方法,使得子类具有父类相同的行为. 继承的好处: 有效实现代码复用,避免重复代码的出现. 让类与类之间产生了关系,是多态的前提. ...

  2. 二、java三大特性--继承

    在讲解之前我们先看一个例子 Husband.java public class Husband { private String name; private String sex; privatein ...

  3. 2019.3.13 Java实现分数的四则运算

    Java实现分数的四则运算 自己的写法 markdown太久没写格式不会用了--将就着看 Fraction.java package com.lanou; public class Fraction ...

  4. 2019/05/13 JAVA虚拟机堆内存调优

    -Xms4000m 堆内存初始值 * -Xmx4000m 堆内存最大值 * -XX:+PrintGCDetails 打印GC信息 * -XX:+UseSerialGC 使用串行GC * -XX:+Pr ...

  5. java四大特性理解(封装继承多态抽象)

    封装: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的接口.面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治.封装的对象,这些对象通过一个受保护的接口访问其他对象.封装是一 ...

  6. Java提高篇之理解java的三大特性——继承

    在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句 ...

  7. Java 三大特性——封装、继承、多态

    一.封装 封装,实际就是把属于同一类事物的共性(包括属性与方法)归到一个类中,以方便使用. 概念:在面向对象程式设计方法中,封装(英语:Encapsulation)是指,一种将抽象性函式接口的实作细节 ...

  8. JAVA基础第二章-java三大特性:封装、继承、多态

    业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...

  9. java三大特性:封装、继承、多态

    Java三大特性之封装   一.定义 封装性指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部的信息,而是通过该类所提供的方法来实现对内部信息的操作和访问. 二.使用封装的好处: 1 ...

随机推荐

  1. hdu 4678 Mine

    HDU 4678 把点开空地时会打开的一大片区域看成一块,题目中说到,在一盘游戏 中,一个格子不可能被翻开两次,说明任意两块空地不会包含相同的格子. 那么就可以看成一个组合游戏. 当空地旁边没连任何数 ...

  2. ASP.NET MVC 3 and the @helper syntax within Razor

    Friday, May 13, 2011 ASP.NET MVC 3 supports a new view-engine option called “Razor” (in addition to ...

  3. 在IE11(Win10)中检查up6.2配置

      1.按F12,打开调试模式    2.打开调试程序选项卡 说明:在调试程序选项卡中可看到IE加载的脚本信息是否正确.因为IE有缓存,导致脚本有时不是最新的.    3.打开脚本,up6.js   ...

  4. Java IO输入输出流File 字节流

    public static void main(String[] args) throws IOException { //创建源 File f =new File("file/stream ...

  5. Graph cut使用方法

    下载:http://www.wisdom.weizmann.ac.il/~bagon/matlab.html 1. 运行compile_gc.m 2.运行gc_example.m(必须同目录吗?!) ...

  6. ParameterizedType的作用

    public interface ParameterizedType  extends Type subParam.Java package com.example.test; public clas ...

  7. LibreOJ 6004 圆桌聚餐 (最大流)

    题解:天啊,这道最大流真是水的一批……只需要每张桌子向每个单位建一条容量为1的边,源点向桌子建边,容量为桌子能坐的人数;单位向汇点建边,容量为单位人数即可,然后根据单位与桌子的连边值是否为一来了解每个 ...

  8. .Net中的并行编程-1.路线图(转)

    大神,大神,膜拜膜拜,原文地址:http://www.cnblogs.com/zw369/p/3834559.html 目录 .Net中的并行编程-1.路线图 分析.Net里线程同步机制 .Net中的 ...

  9. arp欺骗进行流量截获-2

    上一篇讲了原理,那么这一篇主要讲如何实现.基本上也就是实现上面的两个步骤,这里基于gopacket实现,我会带着大家一步步详细把每个步骤都讲到. ARP 欺骗 首先就是伪造ARP请求,让A和B把数据包 ...

  10. java 图书馆系统 练习

    话不多说 娱乐 ================================================== book 类(书本的基础属性) package 图书管理系统01; /** * @ ...