java7 异常继承_Java基础7-异常;jar包
使用接口进行如下程序设计
个人电脑(PC)具有PCI插槽,可以插入PCI卡。显卡、声卡、语音卡都可以作为PCI卡插入PCI插槽中
PC,PCI,slot,VideoCard,SoundCard, VoiceCard
interface PCI{
public void pci();
}
class VideoCard implements PCI{
public void pci(){
System.out.println("This is a videoCard");
}
}
class SoundCard implements PCI{
public void pci(){
System.out.println("This is a soundCard");
}
class VoiceCard implements PCI{
public void pci(){
System.out.println("This is a voiceCard");
}
class PC{
public void slot(PCI pci){
pci.pci();
}
}
class PCIDemo{
public static void main(String[] args){
PC pc = new PC();
pc.slot(new VideoCard());
pc.slot(new SoundCard());
pc.slot(new VoiceCard());
}
}
高富帅
Height
Rich
Handsome
Girl boyFriend(HRH h)
用匿名内部类实现
interface Height{
public void high();
}
interface Rich{
public void rich();
}
interface Handsome{
public void handsome();
}
interface HRH extends Height,Rich,Handsome{
}
class Girl{
public void boyFriend(HRH h){
h.high();
h.rich();
h.handsome();
}
}
class NoNameDemo{
public static void main(String[] args){
Girl girl = new Girl();
girl.boyFriend(new HRH(){
public void high(){
System.out.println("很高");
}
public void handsome(){
System.out.println(“很帅”);
}
public void rich(){
System.out.println(“很有钱”);
}
});
}
}
使用适配器模式实现窗口的事件处理程序
窗口可以响应最大化事件、最小化事件、大小改变事件、恢复事件、移动事件、关闭事件
通过适配器对大小改变事件、移动事件和关闭进行默认处理,窗口只关心最大化和最小化事件即可。
Window
WindowListener{max min resize restore move close}
interface WindowListener{
public void max();
public void min();
public void resize();
public void restore();
public void move();
public void close();
}
abstract class WindowListenerAdapter implements WindowListener{
public void resize(){
}
public void restore(){
}
public void move(){
}
public void close(){
}
}
class Window{
WindowListener listener;
public void setListener(WindowListener listener){
this.listener = listener;
}
public void max(){
listener.max();
}
public void min(){
listener.min();
}
}
class AdapterDemo(){
public static void main(String[] args){
Window window = new Window();
window.setListener(new WindowListenerAdapter(){
public void max(){
System.out.println("窗口最大化");
}
public void max(){
System.out.println("窗口最小化");
}
});
window.max();
window.min();
}
}
使用抽象类和接口实现适配器模式设计。涉及的类和接口分别为ButtonListener(接口),
其中含有click() / dbclick() / keyUp() / keyDown()等方法。
ButtonAdapter(按钮适配器类),适配器中对非click()方法进行默认实现。
Button类中添加addListener(ButtonListener l)方法。
interface ButtonListener{
public void click();
public void dbclick();
public void keyUp();
public void keyDown();
}
abstract class ButtonAdapter implements ButtonListener {
public void keyUp(){
}
public void keyDown(){
}
}
class Button{
private ButtonListener l;
public void addListener(ButtonListener l){
this.l = l;
}
public void click(){
l.click();
}
public void dbclick(){
l.dbclick();
}
}
class AdapterDemo(){
public static void main(String[] args){
Button button = new Button();
Button.addListener(new ButtonAdapter(){
public void click(){
System.out.println("单击了按钮");
}
public void dbclick(){
System.out.println("双击了按钮");
}
});
button.click();
button.dbclick();
}
}
阐述什么是多态。
为什么函数可以覆盖,而属性不能覆盖?
答:对象的多种状态,对继承来说,用父类引用子类的对象;对接口来说,用接口引用实现类的对象。根据javabean原则,公有方法可以被继承,因此可以被子类覆盖,而属性是私有财产,不能被子类覆盖。
java7 异常继承_Java基础7-异常;jar包相关推荐
- java jar 可执行_java基础-可执行jar包
1 简介 大家都知道java项目可以打包成一个可执行的jar包,当我们指定程序的入口main后,可以利用 java -jar YourApp.jar 命令运行可执行jar.那么它需要什么条件才能运行呢 ...
- java 数据库 异常类型_Java基础 -- 常见异常
1.常见异常 Exception 类是 Throwable 类的子类.除了Exception类外,Throwable还有一个子类Error . 异常类有两个主要子类:IOException和Runti ...
- java lang runtimeexception什么意思_Java基础之异常
1.异常结构 Java中异常的父类接口为Throwable,它的两个实现类为Error和Exception.根据Javac对异常的分类可以将异常划分为两类,如下所示: 不可检查异常:Error 和 R ...
- java 负数异常_java基础之异常
一.Throw(抛出异常,让调用者处理) Throw(将异常抛给调用者) 在java中,提供了一个throw关键字,它用来抛出一个指定的异常对象.那么,抛出一个异常具体如何操作呢? 1. 创建一个异常 ...
- java 抛出异常的作用_Java 基础之异常抛出
Java 基础之异常抛出 Java,基础,异常抛出 在 Java 里,除了对异常的捕获外,你还可以抛出异常,还可以创造异常.抛出异常的作用就是告诉你的调用者,程序出现了不正常的情况了,得不要期望的结果 ...
- java 异常 日志_java中的异常、断言、日志(一)
1.Java异常处理i.异常的概念和Java里面的异常体系结构1)基本概念:程序中的异常,一般成为例外情况,可以理解为是非正常情况,其他编程语言里面也有这样的情况,Java里面同样存在这样一个体系结构 ...
- java 异常 理解_java中的异常理解
java异常是java提供的用于处理程序中错误的一种机制. 所谓错误是指在程序运行的过程中发生的一些异常事件(如:除0溢出,数组下标越界,所要读取的文件不存在). 设计良好地程序应该在程序异常发生时提 ...
- java 异常继承体系_1、异常概述和继承体系 2、原因及处理方式 3、运行时异常 4、重写异常处理 5、Throwable类常见方法 6、自定义异常...
01异常的概述 * A: 异常的概述 * a:什么是异常 * Java代码在运行时期发生的问题就是异常. * b:异常类 * 在Java中,把异常信息封装成了一个类. * 当出现了问题时,就会创建异常 ...
- java最外层能捕获到异常吗_Java最外层异常的抓取要用Throwable
3月以来,从来运行正常的link无故崩了好多次,现象:无异常日志,用jstack看主线程挂了进程还在,主线程最外层有catch异常,但是并没有打印日志,实在匪夷所思. 先是怀疑socket连接,通过系 ...
最新文章
- 【C#】登陆次数限制
- 《细胞》重磅!科学家培育全球首个人类自组织心脏类器官,可自主跳动能自我修复...
- python 计算机程序设计基础-零基础,没有编程和计算机基础,究竟该怎么自学python?...
- [原创].NET 分布式架构开发实战之一 故事起源
- Hadoop学习笔记03_Hive练习
- Codeforces Round #323 (Div. 2) C.GCD Table
- littlevgl 透明按钮_张家港3-10吨叉车日租价格透明2020
- python画三维图-Python+matplotlib绘制三维图形5个精选案例
- java 词云_Word Cloud (词云) - JavaScript-Go语言中文社区
- 《BI那点儿事》数据流转换——百分比抽样、行抽样
- 0到100之间的阶乘linux算法,零基础学算法-阶乘
- android 一种键盘不能调起的解决方法
- 非负数的和与个数c语言编程,C语言习题中,编程实现从键盘任意输入20个整数,统计非负数个数,并计算非负数之和...
- pthread_cond_wait和pthread_cond_signal
- 【一日一logo_day_24】Phoenix??
- css实现人走路效果,如何使用纯CSS实现一个人独自行走的动画效果(附源码)
- 五分钟教你屏蔽百度广告
- 剧本翻译之メンアットワーク!4 ~ハンター達よ永遠に~猎人们的永远(序章2)
- 计算机学什专业,计算机专业到底学什么?
- kali升级操作系统
热门文章
- 闲鱼如何利用端计算提升推荐场景的ctr
- 规范白盒生态 S³IP助力未来可预期服务网络
- 10分钟搭建完成人脸通行系统 百度『乘风』人脸智能化平台了解一下
- 学了阿里中台,却依然做不好系统? 聊聊阿里的项目管理
- 微服务精华问答:什么是微服务架构中的DRY?| 技术头条
- 有问有答 | 你真的理解微服务架构吗?
- python编写加密程序_用Python实现一个简单的加密程序
- java 1m_Java编程测试1M内存可用来缓存多少对象
- IntelliJ IDEA 2020.x 入门到爱不释手
- win10系统VMware Workstation与Device/Credential Guard不兼容怎么办