1.USB

package com.yfs.javase;

public interface USB {
//定义规范
public void read();
public void write();
}

2.UDisk读写

package com.yfs.javase;

public class UDisk implements USB {

	@Override
public void read() {
System.out.println("从U盘读取数据..."); } @Override
public void write() {
System.out.println("向U盘写入数据..."); } }

3.只读

package com.yfs.javase;

public class OnlyRead implements USB {

	@Override
public void read() {
System.out.println("读取数据..."); }
//空实现
@Override
public void write() {
//return; } }

4.Mp3读写

package com.yfs.javase;

public class Mp3 implements USB {

	@Override
public void read() {
System.out.println("从Mp3读取数据..."); } @Override
public void write() {
System.out.println("向Mp3写入数据..."); } }

5.Computer

package com.yfs.javase;

public class Computer {

	private USB usb;
//添加usb设备
public void addUsb(USB u) {
usb = u;
u.read();
u.write();
}
//删除usb设备
public void deleteUsb() {
if(usb != null) {
usb = null;
System.out.println("设备已删除...");
} else {
System.out.println("没有usb设备...");
}
} }

6.测试

package com.yfs.javase;

public class Test {

	public static void main(String[] args) {
Computer pc = new Computer();
pc.deleteUsb(); pc.addUsb(new Mp3());
pc.deleteUsb(); pc.addUsb(new UDisk());
pc.deleteUsb(); } }

7.内部类

package com.yfs.javase;

public class OutClass {
private int a = 10; private void privateMethod() { }
public void method1() {
System.out.println("call method1()...");
//创建内部类对象
InnerClass inn = new InnerClass();
inn.iMethod1();
} public void method2() {
System.out.println("call method2() ....");
} //内部类 为外部类提供服务
class InnerClass {
public void iMethod1() {
System.out.println("inner method()");
//外部类的属性方法 当自己的使用
method2();
System.out.println("a = " + a );
privateMethod();
}
} }

8.方法中声明类

package com.yfs.javase;

public class OutMethodClass {

	public void method() {
//方法中声明类 只能在方法中使用
class Inner {
public void innMe() {
System.out.println("call InnMe()...");
}
} Inner inn = new Inner();
inn.innMe(); } public void method2() {
//Inner inn = new Inner();
}
}

9.测试内部类

package com.yfs.javase;

public class Test1 {

	public static void main(String[] args) {
OutClass out = new OutClass();
out.method1();
//InnerClass inn = new InnerClass();
} }

10.letter模板

package com.yfs.javase;
//信模板
public abstract class Templater { public abstract String toName() ;
public abstract String fromName();
public abstract String getContent(); public void show() {
System.out.println("尊敬的" + toName());
System.out.println("\t您好!");
System.out.println("\t\t" + getContent());
System.out.println("\t\t\t 此致 \n\t\t\t\t 敬礼" );
System.out.println("\t\t\t\t" + fromName());
System.out.println("\t\t\t\t 2015.7.25" );
} }

11.模板测试( 匿名类)

package com.yfs.javase.letter;

import com.yfs.javase.Person;

public class LetterTest {

	public static void main(String[] args) {

     Person p1 = new Person("张三");
p1.speak();
// 匿名类
new Person("李四").speak();
//创建对象 实现抽象方法 匿名类
new Templater() { @Override
public String toName() {
return "领导";
} @Override
public String fromName() {
return "员工";
} @Override
public String getContent() {
return "涨点工资吧...";
} }.show();
} }

java新手笔记22 接口示例2的更多相关文章

  1. java新手笔记21 接口

    1.接口 package com.yfs.javase; public interface IDemo1 {//interface 接口 public /*abstract*/ void method ...

  2. JAVA自学笔记22

    JAVA自学笔记22 1.操作基本数据类型的流 DataInputStream DataOutputStream 数据输出流允许应用程序以适当方式将基本的Java数据类型写入输出流中.然后,应用程序可 ...

  3. Java学习笔记22(List接口)

    List接口继承自Collection接口,自身具有三大特点: 1.有序集合:存入和取出的顺序一致: 2.此接口的用户可以对每个元素插入位置进行精确控制:可以通过索引操作元素 3.可以存储重复元素 L ...

  4. Java 学习笔记(7)——接口与多态

    上一篇说了Java面向对象中的继承关系,在继承中说到:调用对象中的成员变量时,根据引用类型来决定调用谁,而调用成员方法时由于多态的存在,具体调用谁的方法需要根据new出来的对象决定,这篇主要描述的是J ...

  5. java新手笔记9 类的封装示例

    1.bank类 package com.yfs.javase; //类封装 public class BankCard { //属性 int balance;//默认0 实例变量 分配给每个对象一个 ...

  6. java新手笔记14 类继承示例

    1.Person package com.yfs.javase; public class Person { private String name; private int age; private ...

  7. java新手笔记6 示例for

    1.计算天数 /*给定一个年月日,计算是一年的第几天 (如输入:2 15 结果:第46天) */ public class Demo1 { public static void main(String ...

  8. java新手笔记32 jdk5新特性

    1.for package com.yfs.javase; import java.awt.Color; import java.util.Calendar; import java.util.Has ...

  9. Java学习笔记_22_Set接口的实现类

    22.Set接口的实现类: Set接口存放的元素是无序的且不包括反复元素. 1>实现类HashSet: HashSet类依据元素的哈希码进行存放,取出时也能够依据哈希码高速找到.HashSet不 ...

随机推荐

  1. HW5.9

    public class Solution { public static void main(String[] args) { System.out.printf("%s\t%s\t%s\ ...

  2. 输入n个数组,数组长度不等,每个数组取出一个数进行组合,求出所有的组合。

    转载声明:原文转自http://www.cnblogs.com/xiezie/p/5511707.html 昨天晚上,有个朋友找到我,他在用matlab编程,但是遇到一个问题,解决不了. 问题如下: ...

  3. html5 做游戏 Quintus Sublime Text牛逼的神器

  4. Dynamices CRM JS 类库 神器 XrmServiceToolkit - A Microsoft Dynamics CRM 2011 & CRM 2013 JavaScript Library

    XrmServiceToolkit - A Microsoft Dynamics CRM 2011 & CRM 2013 JavaScript Library http://xrmservic ...

  5. 通过一张简单的图,让你彻底地搞懂JS的==运算

    大家知道,JavaScript中的==是一种比较复杂运算,它的运算规则很奇怪,很容易让人犯错,从而成为JavaScript中“最糟糕的特性”之一. 在仔细阅读ECMAScript规范的基础上,我画了一 ...

  6. weekend110(Hadoop)的 第一天笔记

    (2015年1月10日) 课程目录 01-hadoop职位需求状况 02-hadoop课程安排 03-hadoop应用场景 04-hadoop对海量数据处理的解决思路 05-hadoop版本选择和伪分 ...

  7. CCS样式表小结

    CSS(Cascading Style Sheet,叠层样式表),作用是美化HTML网页. /*注释区域*/    此为注释语法 一.样式表 (一)样式表的分类 1.内联样式表 和HTML联合显示,控 ...

  8. 【JAVA - 基础】之Annotation注解浅析

    注解在JAVA中,尤其是一些ORM框架(如Hibernate等)中是比较常用的一种机制. 注解是JAVA 1.5之后引入的新功能,正确来说是反射的一部分,没有反射,注解也就无法正常使用.注解可以理解成 ...

  9. android_ViewPager_实现导航页

    android_ViewPager_实现导航页 既然是实现导航页的效果,那么我们肯定是要实现ViewPager的 要实现的效果如下 1.用户进入欢迎页面 2.判断是否是第一次进入,如果是,则进入导航页 ...

  10. 点击modal确定键后删除tr

    做第一个笔记,关于 “书单”.2016-09-03关于一个表格调用modal后,在点击表格中的删除按钮弹出modal,点击确定删除后,将一整行tr 删除的功能. 以下内容为table,表示为某班学生. ...