子父级继承

关键字 extends

首先创建一个父类

         class Fu
{
String name;
int a=1;
public void word()
{
System.out.println("工作");
}
}

由一个子类继承

         class Zi extends Fu
{
int a=2;
public void name()
{
System.out.println(name);
}
}

此时创建一个类,来调用

         class Test()
{
Zi z=new Zi();
z.name="小张";
z.word();
z.name();
}

由此得出总结:
        1)继承的出现提高了代码的复用性,提高软件开发效率
        2)继承的出现让类与类之间产生了关系,提供了多态的前提
        3)成员变量的变化:
            当出现相同名字的成员变量时,就近原则。如上面出现的int a;
            此时如果输出a那么,a=2;
            此时如果想要输出Fu的a,那么使用关键字
            super.a;
        4)上面代码中,Fu有name,而Zi没有name,Zi会继承Fu的name属性,所以此时使用对            象z.name来修改name值是的修改Zi的name。
        5)成员方法的特点
            同样方法也会被继承
            但当方法的返回值类型,方法名,参数相同时,方法会被覆盖
            在子类中,访问父类中的成员方法格式:
            super.父类中的成员方法();

抽象类的描述

  当两个或者多个累的方法相同时,那么向上抽取,只抽取方法声明,不抽取就是想方法就是抽象类

  抽象类的关键字 abstract

  类和抽象法都需要使用abstract修饰

  格式:

    类:    abstract class A{}

    抽象方法:public abstract A();

  抽象类的特点:

    1)抽象类中油抽象方法,抽象方法必须写在抽象类中

    2)抽象类不能直接创建对象

    3)抽象类可以被继承,然后进行方法的重写,重写方法以后就可以进行对象的创建。

接口的表述

  接口就是功能的集合,将方法的描述和具体的实现方法分开,优化了程序

  接口的关键字interface

  接口类的创建: public interface 类名

 接口的特点:

  1)接口中也可以有抽象方法,也需要使用abstract修饰

  2)接口同抽象类一样,不能创建对象,因为方法是抽象的,创建的对象毫无意义

  3)接口的抽象方法可以被继承之后重写

  4)接口中的变量都是常量不可以修改的,固定修饰符  public static final

  

抽象类和接口类的相同点和不同点:

  相同点

  1)都属于被继承或者最顶级的父类

  2)都不可以直接创建对象

  3)都包含有抽象方法,都可以在被继承之后重写这些方法

  

  不同点

  1)抽象类一次只能继承一个,接口可以被类多个实现

  2)抽象类可以包含抽象方法和具体方法,而接口类只能有抽象方法

Java 对象的继承,抽象类,接口的更多相关文章

  1. 面向对象 继承 抽象类 接口 static 权限修饰符

    Day01 面向对象 继承 抽象类 接口 static 1.匿名对象是指创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量. 2.类的继承是指在一个现有类的基础上去构建一个新的类,构建出 ...

  2. 基础学习day07---面向对象三---继承,接口与 抽象类

    一.继承 1.1.继承概念 将对象的共性抽取出来.提取出一个单独的类. 继承使用复用以前的代码非常容易,能够大大的缩短开发周期,降低开发成本,同时增加程序的易维护性 继承使重一个类A能够直接使用另外一 ...

  3. Java中的继承抽象类和接口

    一.总结 1.使用extends关键字继承,eg: class Student extends Persion { ...}; 2.Java编程规范中类的首字母大写,方法的首字母小写单词首字母代谢,e ...

  4. Java学习笔记——继承、接口、多态

    浮点数的运算需要注意的问题: BigDecimal operand1 = new BigDecimal("1.0"); BigDecimal operand2 = new BigD ...

  5. Java自定义排序:继承Comparable接口,重写compareTo方法(排序规则)

    代码: 1 import java.util.*; 2 3 /** 4 * 学习自定义排序:继承Comparable接口,重写compareTo方法(排序规则). 5 * TreeMap容器的Key是 ...

  6. java 类的继承和接口的继承

    父类 public class person { String name; int age; void eat(){ System.out.println("吃饭"); } voi ...

  7. Java中的继承和接口

    本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! 这是个老话题,继承和接口是实现多态的两种方式,如果对象很多,其中一对一对的有共同点,建议用继承,如果 ...

  8. Java入门教程十(抽象类接口内部类匿名类)

    抽象类(abstract) 一个类只定义了一个为所有子类共享的一般形式,至于细节则交给每一个子类去实现,这种类没有任何具体的实例,只具有一些抽象的概念,那么这样的类称为抽象类. 在面向对象领域,抽象类 ...

  9. java之子类继承抽象类,子类构造器调用抽象类构造器问题

    package com.wtd; public abstract class Car { private String name= "car"; public Car(String ...

随机推荐

  1. 二.Spring boot食用指南:结合Jpa(Hibernate) 构建MVC架构

    1.POM依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w ...

  2. 基于Swoole的HTTP/HTTPS代理

    N行代码实现一个简单的代理服务器 <?php /** * Web代理服务器(支持http/https) * @author zhjx922 */ class WebProxyServer { p ...

  3. 数学--数论--整除分块(巨TM详细,学不会,你来打我)

    1.概念 从一道例题说起 在介绍整除分块之前,我们先来看一道算数题:已知正整数n,求∑i=1n⌊ni⌋已知正整数n,求∑i=1n⌊ni⌋在介绍整除分块之前,我们先来看一道算数题: 已知正整数n,求∑i ...

  4. Nginx编译与安装

    我的系统是CentOS-7,Nginx的源码可以在官网下载,网址为:http://nginx.org/en/download.html,我下载了目前的最新版本nginx-1.9.3.tar.gz 下载 ...

  5. js 如何保存代码段并执行以及动态加载script

    1.模块化开发 通常使用的是 export和import 实现代码的共享和导入 2.特殊情况下需要将代码段作为参数传递 可以使用function 的toString方法将整合函数和里面的代码批量转化为 ...

  6. dp cf 20190613

    A. Boredom 这个题目不难,但是我做的还比较复杂,不过还是很开心,至少做出来了,开始因为爆int了还wa了一发,搞得我以为自己做错了 #include <cstdio> #incl ...

  7. 王颖奇 201771010129《面向对象程序设计(java)》第六周学习总结

    实验六 继承定义与使用 实验时间 2018-9-28 1.目的与要求 理论部分: 继承(inheritance): 继承的特点:具有结构层次:子类继承了父类的域和方法. 主要内容: (1)类.子类.超 ...

  8. Coursera课程笔记----C程序设计进阶----Week 5

    指针(二) (Week 5) 字符串与指针 指向数组的指针 int a[10]; int *p; p = a; 指向字符串的指针 指向字符串的指针变量 char a[10]; char *p; p = ...

  9. Linux下ffmpeg交叉编译

    1 获取源代码 git clone -b "branch" https://git.ffmpeg.org/ffmpeg.git "branch" 可以是以下的m ...

  10. Liunx常用操作(五)-如何查询文档中的冒号与引号

    liunx下面有如下一段包含json格式的文档 一.单查所有冒号: .txt | grep [:] 结果如下: 二.单查所有引号: 这里需要转义 .txt | grep [\"] 三.gre ...