1.抽象类必须有子类才有意义
2.子类中会默认有构造器来调用父类的构造器
3.接口:表示一种规范
interface 接口名(命名规则:在名称前加上I后加上able){
}
-2接口也生成对应的字节码
-3接口其实是一个特殊的抽象类
interface 接口名{
void transport();//字节码中实际上是public abstract void a();
}
}
4.接口注意点
-1接口没有构造器(也没有默认构造器),不能创建对象
-2接口中定义的变量,都是全局的静态常量(相当于加了final)
-3接口中定义的方法都是公共的抽象方法
interface Iusbable{
String name = "ss";
//相当于public static final String name;又因为当final修饰一个字段时,字段相当于常量,所以必须加上初始值
void a();
}
-4接口是可以被继承的,并且可以多继承(继承的父类也必须是接口类),但是类不可以多继承
接口中一般不会有方法的覆盖(没有意义)
5.接口:
开始只是规范说明
现在是接口的实现类
implement:实现
实现关系也称继承关系(可以写成多态的形式),但不等同
接口的实现:
-1定义一个类,这个类及可以继承(extends)其他的类(一个),也可以实现(implements)其他的接口(多个)
********继承的是普通的类。
-2这个类必须去覆盖接口中的方法(覆盖的时候,子类覆盖权限必须大于等于父类的范围),接口中的方法默认是
public abstract void a();
-3到具体的对象
面向接口编程:类实现接口的过程中赋值给父类
eg:
interface Iwalkable{ //接口
void walk(); //public abstract void walk
}
class Animal{ //普通的类

}
class Cat extends Animal implements Iwalkable{
public void walk() {
System.out.println("走猫步");
}
}
public class t {

public static void main(String[] args) {
Iwalkable a = new Cat();//面向接口编程
a.walk();
}
}
6.抽象类和接口的相同点:
-1都是被其他类实现或者继承
-2里面都有抽象方法,并且子类中必须覆盖其父类的抽象方法
-3都不能实例化(即不能new())
不同点:
-1抽象类中可以有构造器(但一般不会去创建构造器,因为没有意义,抽象类本身就是抽象的,没有具体的东西),
而接口中不可以有
-2抽象类中可以包含普通方法和抽象方法,而接口中只能有抽象方法
-3接口中默认成员变量:public static final 变量--》相当于静态常量
抽象类中是默认权限(同一个包中能访问,不同包中是不能访问的)
-4接口中的方法:public abstract void a(){};
抽象类中是默认权限:void a(){};

java32的更多相关文章

  1. java32至md5加密

    码,如以下 <span style="font-size:18px;">import java.security.MessageDigest; import java. ...

  2. JavaEE成长之路

    前言 学习Java已经有一段时间了,在学习的过程中也走过了不少弯路. 写下这篇博文,主要是想记录下自己学习编程之路,以及反思自己在学习的时候出现的问题,下面也会给出我自认为学习JavaEE的路线,想要 ...

  3. 在Windows上安装「算法 第四版」组件

    这篇文档将向你介绍如何在Windows系统上安装本书将用到的Java开发环境,同时我们也提供了一个手把手的.使用我们提供的DrJava工具或者用命令行来创建.编译和运行你的第一个Java程序的手册,这 ...

  4. xmind指定32位jdk解决在64位系统上不能启动的问题

    在xmind.ini文件的第一行添加下面的内容: -vmF:\kfgj\Java32.1.6\jdk1.6.0_16\bin\javaw.exe (根据实际情况指定32位jdk的javaw.exe文件 ...

  5. 160812、apache milagro分布式安全认证系统

    java32位.64位及js的代码:http://pan.baidu.com/s/1cqnwuE 一.云链接为中心的软件及需要互联网规模物联网设备 二.利用双线性密码学分发加密操作和分裂的加密参数 三 ...

  6. 一个电脑同时运行 64bit 和 32bit 的eclipse 如何匹配 jdk环境

    一个电脑同时运行 64bit 和 32bit   的  eclipse 如何匹配 jdk环境 1 eclipse 分 64bit 和 32bit 两种.  64bit的eclipse 只能搭配 64b ...

  7. maven 安装 过程

    maven 安装 过程 1 下载: apache-maven-3.0.3-bin.zip 压缩包 2 将压缩包解压到需要安装的目录文件中. 比如解压到: Z:\zr_anzhungwenjian\ap ...

随机推荐

  1. leetcode top 100 题目汇总

    首先表达我对leetcode网站的感谢,与高校的OJ系统相比,leetcode上面的题目更贴近工作的需要,而且支持的语言广泛.对于一些比较困难的题目,可以从讨论区中学习别人的思路,这一点很方便. 经过 ...

  2. Jquery通过AJAX从后台获取数据显示在表格上(复选)

    代码: function GetMultiLineSelectTable(tableId, selectIds) { var table = $(tableId); var url = table.d ...

  3. hive on spark

    hive on spark 的配置及设置CDH都已配置好,直接使用就行,但是我在用的时候报错,如下: 具体操作如下时报的错:      在hive 里执行以下命令:     set hive.exec ...

  4. 深入理解C++11

    [深入理解C++11] 1.很多 现实 的 编译器 都 支持 C99 标准 中的__ func__ 预定 义 标识符 功能, 其 基本 功能 就是 返回 所在 函数 的 名字. 编译器 会 隐式 地 ...

  5. java 图片转base64字符串、base64字符串转图片

    java 图片转base64字符串.base64字符串转图片 1. 图片转base64字符串: /** * base64编码字符串转换为图片 * @param imgStr base64编码字符串 * ...

  6. Python学习—数据库篇之初识mysql

    一.下载与安装 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好 ...

  7. Java虚拟机运行时数据区域及垃圾回收算法

    程序计数器 记录正在执行的虚拟机字节码指令的地址(如果正在执行的是本地方法则为空). Java 虚拟机栈 每个 Java 方法在执行的同时会创建一个栈帧用于存储局部变量表.操作数栈.动态链接.方法出口 ...

  8. cacti 流量图合并

    cacti 安装:https://www.cnblogs.com/weijie0717/p/4072711.html 一.需求介绍 由于交换机的多端口跑同一种流量,需要汇总统计.因此需要见多个端口的流 ...

  9. 在Laravel项目中遇到的一些问题

    1. 控制器名字要跟控制器类名保持一致(当保存某个版本的文件时,我通常喜欢复制一份并重命名,这时候重命名的文件的类名并没有改变,着往往回影响结果,却一直找不出错在哪里),在备份的时候应该新建一个文件夹 ...

  10. 重启虚拟机后dhclient进程未运行解决办法

    问题分析 重启虚拟机后,dhclient进程未运行的根因通常为: 1.NetworkManager未开启自启动导致的dhclient进程未运行 2.网卡设置未纳入NetworkManager管理导致的 ...