抽象方法的定义语法:
访问修饰符 abstract <返回类型> <方法名>(参数列表);
 
在语法中:abstract关键字表示该方法被定义为抽象方法
 
抽象方法和普通方法的区别:
1、抽象方法小修饰符abstract,普通方法不需要
2、普通方法有方法体,抽象方法没有方法体
**********************************************************
抽象类的定义语法:
abstract class <类名>{ }
 
在语法中:abstract关键字表示该类被定义为抽象类
 
抽象类和普通类的区别:
1、抽象类需要修饰符abstract,普通类不需要
2、普通类可以实例化,抽象类不能实例化
**********************************************************
定义一个抽象类:
public abstract class 类名称{
修饰符 abstract 返回类型 方法名();
修饰符 返回类型 方法名(){方法体}
}
 
抽象方法只能定义在抽象类中。但是抽象类中可以包含抽象方法,也可以包含普通方法,还可以包含普通类包含的一切成员。
**********************************************************
接口的定义语法:
public interface 接口名{
//接口成员
}
 
在语法中:
1、和抽象类不同,定义接口使用interface修饰符,访问修饰符只能是public,且可选。
2、接口成员可以是全局常量和公共的抽象方法。
与抽象类一样,接口要使用也必须通过子类,子类通过implements关键字实现接口。
 
实现接口的语法:
public 类名 implements 接口名{
实现方法
普通方法
}
 
在语法中:
1、实现接口使用implements关键字
2、实现接口的类必须实现接口中定义的所有抽象方法。接口的实现类允许包含普通方法。
 
例:定义和实现USB接口,进行数据传输。关键代码:
 
public interface UsbInterface{
void service();
public class UDisk implements UsbInterface{
public void service(){
system.out.println("连接USB口,开始传输数据");
}
}
}
 
 
例:定义USB风扇类,实现USB接口,获得电流,让风扇转动。关键代码:
 
public class UsbFan impements UsbInterface{
public void service(){
system.out.println("连接USB口,获得电流,风扇开始转动。")
}
}
 
 
例:编写测试类,实现U盘传输数据,实现USB风扇转动。关键代码:
public class Test{
public static void main(string[] args){
//1、U盘
UsbInterface uDisk = new UDisk();
uDisk.service();
//2、USB风扇
UsbInterface usbFan = new UsbFan();
usbFan.service();
}
}
**********************************************************
接口继承的语法:
修饰符 interface 接口名 extends 父接口1,父接口2,……{
常量定义
方法定义
}
 
一个普通类只能继承一个父类,但能同时实现多个接口,也可以同时继承抽象类和实现接口
 
实现多个接口的语法:
class 类名 extends 父类名 implements 接口1,接口2,……{
类的成员
}
 
**********************************************************
定义和实现接口,需要注意的内容:
1、接口和类、抽象类是一个层次的概念,命名规则相同。
2、修饰符如果是public,该接口在整个项目中可见。如果省略修饰符,该接口只在当前包可见。
3、接口中可以定义常量,不能定义变量。接口中的属性都默认用“public static final”修饰,即接口中的属性都是全局静态常量。接口中的常量必须在定义时指定初始值。
4、接口中的所有方法都是抽象方法,接口中的方法都默认为public。
5、和抽象类一样,接口同样不能实例化,接口中不能有构造方法。
6、类只能继承一个父类,但可以通过implements实现多个接口。一个类必须实现接口的全部方法,否则必须定义为抽象类。一个类在继承父类的同时又实现了多个接口时,extends必须位于implements之前
 

java基础知识总结(2)的更多相关文章

  1. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  2. java基础知识小总结【转】

    java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...

  3. Java基础知识系列——String

    最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识.我复习Java基础知识主要是依据Java API和The Java™ Tutorials. 今天是第一篇,复习了一下Strin ...

  4. 学习android学习必备的java基础知识--四大内部类

    学习android必备的java基础知识--四大内部类 今天学习android课程,因为我的主专业是JAVA,但是兴趣班却有这其他专业的同学,学习android 需要具备一些java的基础知识,因此就 ...

  5. JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)

    本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...

  6. java基础知识梳理

    java基础知识梳理 1 基本数据类型

  7. java基础知识回顾之---java String final类普通方法

    辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /*     * 按照面向对象的思想对字符串进行功能分类.     *      ...

  8. Java 基础知识(一)

    Java基础知识篇: 一.关键字解释 1. final:修饰非抽象类,非抽象方法和属性, 以及修饰方法参数,代表“无法改变的”.出于对设计或者效率的考虑使用该关键字. final类无法被继承,fina ...

  9. java 基础知识三 java变量

    java  基础知识 三 变量 1.作用域 {} 包围起来的代码 称之为代码块,在块中声明的变量只能在块中使用 2.常量 就是固定不变的量,一旦被定义,它的值就不能再被改变. 3.变量 变量必须在程序 ...

  10. java 基础知识二 基本类型与运算符

    java  基础知识二 基本类型与运算符 1.标识符 定义:为类.方法.变量起的名称 由大小写字母.数字.下划线(_)和美元符号($)组成,同时不能以数字开头 2.关键字 java语言保留特殊含义或者 ...

随机推荐

  1. RegSvr32注册OCX时报错

    RegSvr32注册OCX时报错. 错误1: 模块“dsoframer2007.ocx”已加载,但对 DllRegisterServer 的调用失败,错误代码为 0x80070005. 有关此问题的详 ...

  2. Java this的一两点使用

    Java this的一两点使用 之前的文章都是关于Android的使用,这次想写一些关于Java的知识,总结一下Java的使用.这次写的是关于Java this的使用,介绍以下内容: this的概念 ...

  3. UIColor 使用起来的坑

    我们一般会用 UIColor 的RGB来生成颜色: [UIColor colorWithRed:220/255 green:220/255 blue:220/255 alpha:1.0];//这样生成 ...

  4. mybatis的一些小总结

    好长时间没用mybatis了,现在项目忽然用mybatis,用的过程中出现了些问题,虽然解决了,不过这花的时间有些长了.总结用的过程中出现的一些问题 1.mapper.xml 之前一直用的自动生成,现 ...

  5. 导入一些常用命令比如(rz),关闭防火墙外面可以访问

     yum -y install lrzsz-----------导入常用命令 我在虚拟机上面启动了一个项目 这个原因是防火墙造成的,关闭防火墙  iptables -L 查看下 service ipt ...

  6. Java 抽象类的理解

    1. 基本概念 用abstract修饰的类是抽象类.如果类中有方法是abstract类型的,那么此类肯定是abstract类型的,也就是说此类的修饰符肯定有abstract(也就是说,有抽象方法的类是 ...

  7. java compiler level does not match the version of the installed java project facet 解决方案

    项目出现 java compiler level does not match the version of the installed java project facet 错误,一般是项目移植出现 ...

  8. 【JQ+锚标记实现点击页面回到顶部】

    前言:今天想写个页面常用到的[点击回到页面顶部或是首页的功能],生活和职场一样,总会有低谷的时候,这个时候咱也别怂.别怂.别怂,说三遍!那都不是事,工作没了,再找呗,就像我上周五,团队解散那天,我是笑 ...

  9. 【Win10 开发】读取PDF文档

    关于用来读取PDF文档的内容的API,其实在Win8.1的时候就有,不过没关系,既咱们讨论的是10的UAP,连同8.1的内容也包括进去,所以老周无数次强调:把以前的内容学好了,就可以在不学习任何新知识 ...

  10. WPF自定义控件与样式(2)-自定义按钮FButton

    一.前言.效果图 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 还是先看看效果 ...