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

做淘宝美工图片网站常见的系统优化软件

做淘宝美工图片网站,常见的系统优化软件,无为做网站,宝安中心区新楼盘继承的概述 生活中的继承 财产继承: 绿化:前人栽树,后人乘凉 “绿水青山,就是金山银山” 样貌: 继承之外,是不是还可以"进化": 继承有延续(下一代延续上一代的基因、财…

 继承的概述

生活中的继承
  • 财产继承:

绿化:前人栽树,后人乘凉

 

“绿水青山,就是金山银山”

  • 样貌:

 

继承之外,是不是还可以"进化":

 

继承有延续(下一代延续上一代的基因、财富)、扩展(下一代和上一代又有所不同)的意思。

 Java中的继承

角度一:从上而下

为描述和处理个人信息,定义类Person:

 

为描述和处理学生信息,定义类Student:

 

通过继承,简化Student类的定义:

 

说明:Student类继承了父类Person的所有属性和方法,并增加了一个属性school。Person中的属性和方法,Student都可以使用。

角度二:从下而上

 

多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类中无需再定义这些属性和行为,只需要和抽取出来的类构成继承关系。如图所示:

 

再举例:

 

 继承的好处
  • 继承的出现减少了代码冗余,提高了代码的复用性。

  • 继承的出现,更有利于功能的扩展。

  • 继承的出现让类与类之间产生了is-a的关系,为多态的使用提供了前提。

    • 继承描述事物之间的所属关系,这种关系是:is-a 的关系。可见,父类更通用、更一般,子类更具体。

注意:不要仅为了获取其他类中某个功能而去继承!

 继承的语法

继承中的语法格式

通过 extends 关键字,可以声明一个类B继承另外一个类A,定义格式如下

[修饰符] class 类A {
    ...
}

[修饰符] class 类B extends 类A {
    ...
}

 

 继承中的基本概念

类B,称为子类、派生类(derived class)、SubClass

类A,称为父类、超类、基类(base class)、SuperClass

 代码举例

1、父类

package com.atguigu.inherited.grammar;

/*
 * 定义动物类Animal,做为父类
 */
public class Animal {
    // 定义name属性
    String name;
    // 定义age属性
    int age;

    // 定义动物的吃东西方法
    public void eat() {
        System.out.println(age + "岁的"
                + name + "在吃东西");
    }
}

2、子类

package com.atguigu.inherited.grammar;

/*
 * 定义猫类Cat 继承 动物类Animal
 */
public class Cat extends Animal {
    int count;//记录每只猫抓的老鼠数量

    // 定义一个猫抓老鼠的方法catchMouse
    public void catchMouse() {
        count++;
        System.out.println("抓老鼠,已经抓了"
                + count + "只老鼠");
    }
}

3、测试类

package com.atguigu.inherited.grammar;

public class TestCat {
    public static void main(String[] args) {
        // 创建一个猫类对象
        Cat cat = new Cat();
        // 为该猫类对象的name属性进行赋值
        cat.name = "Tom";
        // 为该猫类对象的age属性进行赋值
        cat.age = 2;
        // 调用该猫继承来的eat()方法
        cat.eat();
        // 调用该猫的catchMouse()方法
        cat.catchMouse();
        cat.catchMouse();
        cat.catchMouse();
    }
}

 

 继承性的细节说明

子类会继承父类所有的实例变量和实例方法

从类的定义来看,类是一类具有相同特性的事物的抽象描述。父类是所有子类共同特征的抽象描述。而实例变量和实例方法就是事物的特征,那么父类中声明的实例变量和实例方法代表子类事物也有这个特征。

  • 当子类对象被创建时,在堆中给对象申请内存时,就要看子类和父类都声明了什么实例变量,这些实例变量都要分配内存。

  • 当子类对象调用方法时,编译器会先在子类模板中看该类是否有这个方法,如果没找到,会看它的父类甚至父类的父类是否声明了这个方法,遵循从下往上找的顺序,找到了就停止,一直到根父类都没有找到,就会报编译错误。

所以继承意味着子类的对象除了看子类的类模板还要看父类的类模板。

2、子类不能直接访问父类中私有的(private)的成员变量和方法

子类虽会继承父类私有(private)的成员变量,但子类不能对继承的私有成员变量直接进行访问,可通过继承的get/set方法进行访问。如图所示:

 

3、在Java 中,继承的关键字用的是“extends”,即子类不是父类的子集,而是对父类的“扩展”

子类在继承父类以后,还可以定义自己特有的方法,这就可以看做是对父类功能上的扩展。

4、Java支持多层继承(继承体系)

 

 

class A{}
class B extends A{}
class C extends B{} 

说明:

  • 子类和父类是一种相对的概念

  • 顶层父类是Object类。所有的类默认继承Object,作为父类。

5、一个父类可以同时拥有多个子类

class A{}
class B extends A{}
class D extends A{}
class E extends A{} 

6、Java只支持单继承,不支持多重继承  

 

 

public class A{}
class B extends A{}

//一个类只能有一个父类,不可以有多个直接父类。
class C extends B{}     //ok
class C extends A,B...    //error

 练习

练习1:定义一个学生类Student,它继承自Person类

 

练习2:

(1)定义一个ManKind类,包括

  • 成员变量int sex和int salary;

  • 方法void manOrWoman():根据sex的值显示“man”(sex==1)或者“woman”(sex==0);

  • 方法void employeed():根据salary的值显示“no job”(salary==0)或者“ job”(salary!=0)。

(2)定义类Kids继承ManKind,并包括

  • 成员变量int yearsOld;

  • 方法printAge()打印yearsOld的值。

(3)定义类KidsTest,在类的main方法中实例化Kids的对象someKid,用该对象访问其父类的成员变量及方法。

练习3:根据下图实现类。在CylinderTest类中创建Cylinder类的对象,设置圆柱的底面半径和高,并输出圆柱的体积。

 

http://www.shuangfujiaoyu.com/news/55506.html

相关文章:

  • 网站架构原理河北seo诊断培训
  • 海尔集团网站建设页面seo优化
  • 黄骅港旅游景点seo是啥软件
  • 淘客网站必须备案么疫情最新数据消息地图
  • 怎样加强组织建设云优化seo软件
  • 贵州企业展示型网站建设整合营销公司排名
  • 南通专业网站建设报价福州seo顾问
  • dwcs5怎么做动态网站seo刷关键词排名免费
  • linux做网站好百度知道首页官网
  • 目前个人网站做地最好是哪几家数字营销公司排行榜
  • 网站 做 app怎么去优化关键词
  • 网站的设计风格有哪些网页设计自学要多久
  • 建筑木模板报价清单湖北网站seo设计
  • 高端网站建设 案例石狮seo
  • h5免费制作平台八图seo推广网站
  • 俄罗斯网站域名百度登录账号首页
  • php模板建站电子制作网站
  • 做公众号文章的网站seo优化关键词0
  • 婚纱销售网站企业seo顾问服务阿亮
  • 优质的聊城网站建设市场推广的方法和规划
  • 网页站点规划最新域名查询
  • 重庆装修网重庆网站seo公司
  • 军事网址大全 网站国际军事新闻最新消息今天
  • 受欢迎的免费网站建设汕头网站建设方案开发
  • 企业网站平台如何做网络推广seo三人行论坛
  • wordpress被挂黑链windows优化大师怎么彻底删除
  • 网站开发过程记录册网文网站排名
  • 北京什么网站找工作搜狗网页版
  • 浙江省建设局网站如何建立网上销售平台
  • 成都科技网站建设电话多少钱做seo有什么好处