2022年 一月19号复盘内容二。(继承 多态 接口 抽象(三)

简介: 2022年 一月19号复盘内容二。(继承 多态 接口 抽象(三)

3接口案例。

package interfacea;
/*
 * 接口 定义 抽象
 */
public interface USBA {
public void turnOn(); //设备启动'
  public void turnruning();  //设备运行
  public void turnOff();  //设备关闭
  public void name(); //设备名称
  public void color(); //设备颜色
  public void height();//设备高度
  public void weight();//设备宽度
  public void length(); //设备长度
  public void m();
}
package interfacea;
public class aer  implements USBA{
  @Override
  public void turnOn() {
    // TODO Auto-generated method stub
    System.out.println("are已启动,请开始以下程序");
  }
  @Override
  public void turnruning() {
    // TODO Auto-generated method stub
    System.out.println("are开始运行自己设定的程序");
  }
  @Override
  public void turnOff() {
    // TODO Auto-generated method stub
    System.out.println("手机结束自己运行的程序系统");
  }
  @Override
  public void name() {
    // TODO Auto-generated method stub
    System.out.println("are名称为huaweiwww");
  }
  @Override
  public void color() {
    // TODO Auto-generated method stub
    System.out.println("are色彩为back");
  }
  @Override
  public void height() {
    // TODO Auto-generated method stub
    System.out.println("are高度为8cm");
  }
  @Override
  public void weight() {
    // TODO Auto-generated method stub
    System.out.println("are宽度为15cm");
  }
  @Override
  public void length() {
    // TODO Auto-generated method stub
    System.out.println("are长度为20cm");
  }
  @Override
  public void m() {
    // TODO Auto-generated method stub
    System.out.println("m有飒飒");
  }
}
package interfacea;
public class ElectronicWhiteboard  implements USBA{
  @Override
  public void turnOn() {
    // TODO Auto-generated method stub
    System.out.println("电子白板真在运行,打开你要的软件,并开始运行");
  }
  @Override
  public void turnruning() {
    // TODO Auto-generated method stub
    System.out.println("电子白板真在运行,正在运行这个程序,并开始运行");
  }
  @Override
  public void turnOff() {
    // TODO Auto-generated method stub
    System.out.println("电子白板结束自己运行的程序系统");
  }
  @Override
  public void name() {
    // TODO Auto-generated method stub
    System.out.println("电子白板名称为huaweiwww");
  }
  @Override
  public void color() {
    // TODO Auto-generated method stub
    System.out.println("电子白板色彩为back");
  }
  @Override
  public void height() {
    // TODO Auto-generated method stub
    System.out.println("电子白板高度为150cm");
  }
  @Override
  public void weight() {
    // TODO Auto-generated method stub
    System.out.println("电子白板宽度为200cm");
  }
  @Override
  public void length() {
    // TODO Auto-generated method stub
    System.out.println("电子白板长度为300cm");
  }
  @Override
  public void m() {
    // TODO Auto-generated method stub
    System.out.println("m有飒飒");
  }
}
package interfacea;
public class Keyboarda implements USBA {
  @Override
  public void turnOn() {
    // TODO Auto-generated method stub
    System.out.println("键盘已启动,请开始以下程序 ok");
  }
  @Override
  public void turnruning() {
    // TODO Auto-generated method stub
    System.out.println("键盘开始运行自己设定的程序");
  }
  @Override
  public void turnOff() {
    // TODO Auto-generated method stub
    System.out.println("键盘结束自己运行的程序系统");
  }
  @Override
  public void name() {
    // TODO Auto-generated method stub
    System.out.println("键盘名称为huaweiwww");
  }
  @Override
  public void color() {
    // TODO Auto-generated method stub
    System.out.println("键盘色彩为back");
  }
  @Override
  public void height() {
    // TODO Auto-generated method stub
    System.out.println("键盘高度为10cm");
  }
  @Override
  public void weight() {
    // TODO Auto-generated method stub
    System.out.println("键盘宽度为30cm");
  }
  @Override
  public void length() {
    // TODO Auto-generated method stub
    System.out.println("键盘长度为80cm");
  }
  @Override
  public void m() {
    // TODO Auto-generated method stub
    System.out.println("m有飒飒");
  }
}
package interfacea;
public class Mousea  implements USBA {
  @Override
  public void turnOn() {
    // TODO Auto-generated method stub
    System.out.println("鼠标已启动,请开始以下程序");
  }
  @Override
  public void turnruning() {
    // TODO Auto-generated method stub
    System.out.println("鼠标开始运行自己设定的程序");
  }
  @Override
  public void turnOff() {
    // TODO Auto-generated method stub
    System.out.println("鼠标结束自己运行的程序系统");
  }
  @Override
  public void name() {
    // TODO Auto-generated method stub
    System.out.println("鼠标名称为huaweiwwwe");
  }
  @Override
  public void color() {
    // TODO Auto-generated method stub
    System.out.println("鼠标色彩为back");
  }
  @Override
  public void height() {
    // TODO Auto-generated method stub
    System.out.println("鼠标高度为50mm");
  }
  @Override
  public void weight() {
    // TODO Auto-generated method stub
    System.out.println("鼠标宽度为500mm");
  }
  @Override
  public void length() {
    // TODO Auto-generated method stub
    System.out.println("鼠标长度为900mm");
  }
  @Override
  public void m() {
    // TODO Auto-generated method stub
    System.out.println("m有飒飒");
  }
}
package interfacea;
public class Phonea  implements USBA{
  @Override
  public void turnOn() {
    // TODO Auto-generated method stub
    System.out.println("手机已启动,请开始以下程序");
  }
  @Override
  public void turnruning() {
    // TODO Auto-generated method stub
    System.out.println("手机开始运行自己设定的程序");
  }
  @Override
  public void turnOff() {
    // TODO Auto-generated method stub
    System.out.println("手机结束自己运行的程序系统");
  }
  @Override
  public void name() {
    // TODO Auto-generated method stub
    System.out.println("手机名称为huaweiwww");
  }
  @Override
  public void color() {
    // TODO Auto-generated method stub
    System.out.println("手机色彩为back");
  }
  @Override
  public void height() {
    // TODO Auto-generated method stub
    System.out.println("手机高度为8cm");
  }
  @Override
  public void weight() {
    // TODO Auto-generated method stub
    System.out.println("手机宽度为15cm");
  }
  @Override
  public void length() {
    // TODO Auto-generated method stub
    System.out.println("手机长度为20cm");
  }
  @Override
  public void m() {
    // TODO Auto-generated method stub
    System.out.println("m有飒飒");
  }
}
package interfacea;
public class telephone implements USBA {
  @Override
  public void turnOn() {
    // 
    System.out.println("电话已启动,请打电话");
  }
  @Override
  public void turnruning() {
    // TODO Auto-generated method stub
    System.out.println("电话开始进行联系对方");
  }
  @Override
  public void turnOff() {
    // TODO Auto-generated method stub
    System.out.println("电话结束:请把电源turnoff");
  }
  @Override
  public void name() {
    // TODO Auto-generated method stub
    System.out.println("电话名称为大哥大");
  }
  @Override
  public void color() {
    // TODO Auto-generated method stub
    System.out.println("电话色彩为开门红");
  }
  @Override
  public void height() {
    // TODO Auto-generated method stub
    System.out.println("电话高度为6cm");
  }
  @Override
  public void weight() {
    // TODO Auto-generated method stub
    System.out.println("电话宽度为12cm");
  }
  @Override
  public void length() {
    // TODO Auto-generated method stub
    System.out.println("电话长度为18cm");
  }
  @Override
  public void m() {
    // TODO Auto-generated method stub
    System.out.println("m有飒飒");
  }
}
package interfacea;
import java.util.ArrayList;
public class DwmoTestaTest  {
  public static void main(String[] args) {
    ArrayList <USBA>usbs =new <USBA> ArrayList ();
    usbs.add(  new Mousea());    //类
      usbs.add(new Keyboarda());
      usbs.add(new Phonea());
      usbs.add(new ElectronicWhiteboard ());
      usbs.add(new telephone ());
      usbs.add(new aer());
        System.out.println("用for循化输出内容");
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).height();
    }
    System.out.println("height");
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).weight();
  }
    System.out.println("weight");
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).length();
    }
    System.out.println("设定设备的长:宽:高"); 
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).turnOn();   //接口方法
    }
    System.out.println("设定程序启动的系统");
    System.out.println("============================");
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).turnOff();
    }
    System.out.println("设置程序正在运行的程序");
    System.out.println("============================");
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).turnruning();
    }
    System.out.println("设置程序名称");
    System.out.println("**********************");
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).name();
    }
    System.out.println("设置设备色彩为");
    System.out.println("**********************");
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).color();
    }
    for (int i = 0; i < usbs.size(); i++) {
      usbs.get(i).m();
    } 
  }
}

结果:

4来点小课。

package simpledateformat;
import java.util.Date;
import java.text.SimpleDateFormat;
/**
 * 给日期设置显示的格式
 * @author Administrator
 *
 */
public class SimpleDateFormatTest1 {
  public static void main(String[] args) throws Exception{
    Date date = new Date();
    //创建格式化工具
    SimpleDateFormat  sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
    //将日期格式化
    String s = sdf.format(date);
    System.out.println(s);
    //将一个String转成相对应Date
    String ss = "2020年12月12日 12:12:12";
    Date date1 = sdf.parse(ss);
    System.out.println(date1);
  }
}
package homework;
import java.util.Date;
import java.text.SimpleDateFormat;
import java.text.*;
/**
 * 3.利用程序计算出距离1970年1月1日8时整,经历了1000000000000ms的日期
 * 是多少,日期输出格式yyyy-MM-dd**
 * @author MZFAITHDREAM
 *
 */
public class Ang3 {
  public static void main(String[] args) {
    //创建一个Date
    Date date = new Date(1000000001);
    System.out.println(date);
    SimpleDateFormat  sdf = new SimpleDateFormat("yyyy年MM月dd");
    //将日期格式化
    String time =sdf.format(date);
    System.out.println(time);
  }
}
package date1;
import java.util.Date;
public class DateTest {
  /**
   * @param args
   */
  public static void main(String[] args) {
    //创建当前的时间
    Date date = new Date();
    System.out.println(date);
    //初始化一个时间(指定一个时间)
    Date date1 = new Date(1000*60*60*24);
    System.out.println(date1);
    Date date2 = new Date(1000*60*60*24+5);
    System.out.println(date2);
  }
}

程序一些常看到的错误。

public class Exception1 {
  public static void main(String[] args) {
    System.out.println("异常之前");
    //java.lang.ArithmaticException算数异常,除数为0  1
//    int a = 1/0;
    int b = 1;
    System.out.println("异常之后");
    //空指针异常     2
//    int[] arr = null;    
//    System.out.println(arr.length);
    //java.lang.ArrayIndexoutofBoundsException数组下标越界异常
    int[] arr = new int[3];
    System.out.println(arr[3]);
  }
}
相关文章
|
2月前
|
Java 程序员 C++
抽象类 vs 接口:如何在实际项目中做出正确选择?
小米讲解了Java中的抽象类和接口,分析了两者的异同及使用场景。抽象类适合共享状态和行为逻辑,接口适用于提供统一行为规范,尤其在多继承场景下。文中通过实例说明了如何选择使用抽象类或接口,帮助开发者更好地理解这两者在实际开发中的应用。
28 0
|
6月前
详尽分享继承和多态对应的几类问题
详尽分享继承和多态对应的几类问题
28 0
2022年 一月19号复盘内容二。(继承 多态 接口 抽象(二)
2022年 一月19号复盘内容二。(继承 多态 接口 抽象(二)
40 0
2022年 一月19号复盘内容二。(继承 多态 接口 抽象)(一)
2022年 一月19号复盘内容二。(继承 多态 接口 抽象)(一)
49 0
|
Java
2022年/一月18号善于复盘回顾内容一(java的面向对象编程中的类对象属性 方法)Java面向对象的核心继承 封装 多态。(二)
2022年/一月18号善于复盘回顾内容一(java的面向对象编程中的类对象属性 方法)Java面向对象的核心继承 封装 多态。
89 0
2022年/一月18号善于复盘回顾内容一(java的面向对象编程中的类对象属性 方法)Java面向对象的核心继承 封装 多态。(二)
|
Java
2022年/一月18号善于复盘回顾内容一(java的面向对象编程中的类对象属性 方法)Java面向对象的核心继承 封装 多态。(一)
2022年/一月18号善于复盘回顾内容一(java的面向对象编程中的类对象属性 方法)Java面向对象的核心继承 封装 多态。
95 0
2022年/一月18号善于复盘回顾内容一(java的面向对象编程中的类对象属性 方法)Java面向对象的核心继承 封装 多态。(一)
|
C# 索引
【C#】【平时作业】习题-7-继承、抽象与多态
【C#】【平时作业】习题-7-继承、抽象与多态
148 0
【C#】【平时作业】习题-7-继承、抽象与多态
系统认知Java接口、接口与继承、接口与多态
在面向对象的基础之上,接口的出现是类性质的一种完善,是继承机制的一种补充,是体现多态性的一种形式。从生活实际出发,接口把它之下一系列复杂的逻辑,功能等通过“实现接口”的方式封装简化出来,只通过连接一个小小的口子就轻而易举地实现了背后实则很复杂的功能。我想这就是接口存在的意义所在吧。
222 0
系统认知Java接口、接口与继承、接口与多态
|
Java 数据库 数据安全/隐私保护
规则之间-方法覆写限制 | 带你学《Java面向对象编程》之四十
本节向读者介绍了覆写方法过程中的一些限制,并拓宽读者对访问权限控制符的认识,帮助读者进行有效的方法覆写。
|
开发者
适配器类(便利类)的由来:当你自己写的类中想用某个接口中个别方法的时候(注意:不是所有的方法),肿么办?
有的时候需要将接口和抽象类配合起来使用,这样可以为开发者提供相当的便利性,开发者觉得哪个方便就选用哪个。这样的抽象类称为便利类。此时,便利类并不需要实现接口的所有方法,可以留给继承它的子类去实现它们。 抽象父类提供给子类一个方法,主要是起规范作用,你不写父类这个方法也行。
1069 0