java32
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的更多相关文章
- java32至md5加密
码,如以下 <span style="font-size:18px;">import java.security.MessageDigest; import java. ...
- JavaEE成长之路
前言 学习Java已经有一段时间了,在学习的过程中也走过了不少弯路. 写下这篇博文,主要是想记录下自己学习编程之路,以及反思自己在学习的时候出现的问题,下面也会给出我自认为学习JavaEE的路线,想要 ...
- 在Windows上安装「算法 第四版」组件
这篇文档将向你介绍如何在Windows系统上安装本书将用到的Java开发环境,同时我们也提供了一个手把手的.使用我们提供的DrJava工具或者用命令行来创建.编译和运行你的第一个Java程序的手册,这 ...
- xmind指定32位jdk解决在64位系统上不能启动的问题
在xmind.ini文件的第一行添加下面的内容: -vmF:\kfgj\Java32.1.6\jdk1.6.0_16\bin\javaw.exe (根据实际情况指定32位jdk的javaw.exe文件 ...
- 160812、apache milagro分布式安全认证系统
java32位.64位及js的代码:http://pan.baidu.com/s/1cqnwuE 一.云链接为中心的软件及需要互联网规模物联网设备 二.利用双线性密码学分发加密操作和分裂的加密参数 三 ...
- 一个电脑同时运行 64bit 和 32bit 的eclipse 如何匹配 jdk环境
一个电脑同时运行 64bit 和 32bit 的 eclipse 如何匹配 jdk环境 1 eclipse 分 64bit 和 32bit 两种. 64bit的eclipse 只能搭配 64b ...
- maven 安装 过程
maven 安装 过程 1 下载: apache-maven-3.0.3-bin.zip 压缩包 2 将压缩包解压到需要安装的目录文件中. 比如解压到: Z:\zr_anzhungwenjian\ap ...
随机推荐
- CWindowDC与CClientDC,CPaintDCC的区别
[转] CClientDC: (客户区设备上下文)用于客户区的输出,与特定窗口关联,可以让开发者访问目标窗口中客户区,其构造函数中包含了GetDC,析构函数中包含了ReleaseDC. 用法是:C ...
- Java 8 Optional 类
转自:https://www.runoob.com/java/java8-optional-class.html Optional 类是一个可以为null的容器对象.如果值存在则isPresent() ...
- ffplay流程分析
void main() { is = stream_open(input_filename, file_iformat); } static VideoState *stream_open(const ...
- 并发编程之synchronized关键字
synchronized关键字 synchronized关键字最主要的三种使用方式的总结 1.修饰实例方法,作用于当前对象实例加锁,进入同步代码块前要获得当前对象实例的锁 2.修饰静态方法,作用于当前 ...
- lombok踩坑与思考
虽然接触到lombok已经有很长时间,但是大量使用lombok以减少代码编写还是在新团队编写新代码维护老代码中遇到的. 我个人并不主张使用lombok,其带来的代价足以抵消其便利,但是由于团队编码风格 ...
- linux 服务管理
服务的分类 查看已安装的服务 RPM包安装的服务 chkconfig --list #查看服务自启动状态,可以看到所有rpm包安装的服务 ps aux #查看已启动的服务 源码包安装的服务 查看服务安 ...
- CamStar insitexmlclient重新封装为.net Core类库
工作原因经常使用camstar的 InsiteXMLClient类库做二次开发,但是只能在4.X环境下使用,对于日益繁荣的.net core生态,花费了些时间把原有的类库重新封装为.net core ...
- Jquery实现点击表格行变色!
时隔一年左右,学习了新的知识,从尝试Linux部署项目,网络安全,至后端开发,然后用起了Jquery, 而且是必须要做.也让自己见识可能会更广泛一些.对于一个刚毕业的大学生而言.方正我是没有用过jqu ...
- 将ipad作为电脑拓展屏或分屏的简单方法
用Ipad实现电脑分屏的方法是挺简单的,但鉴于部分小白找不到合适的门路,在此重新分享一下. 需要的装备: ipad 电脑 数据连接线 方法:某宝上搜索 duet display ,只需1元左 ...
- Nagios监控配置文件及监控流程
1.安装路径/usr/local/nagios/下存在etc.bin.sbin.share.var 这五个目录.Nagios 各个目录用途说明如下: bin Nagios 可执行程序所在目录 etc ...