A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 高慧觉 中级黑马   /  2015-2-26 21:15  /  1022 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我用电脑的将隐藏文件设置成可见作为例子来讲一下接口的实际应用首先创建一个Computer类
  1. package example;

  2. public class Computer {
  3.         /*
  4.          * 私有类 HiddenFile
  5.          */
  6.         public HiddenFile creatInstance(){
  7.                 HiddenFile hf = new HiddenFile();
  8.                 return hf;
  9.         }
  10.        
  11.         private class HiddenFile implements FileSetting{
  12.                 //文件本身有创建功能
  13.                 public void creat(){
  14.                        
  15.                 }
复制代码
接口如下:
  1. package example;

  2. public interface FileSetting {
  3.         public void beVisible();
  4. }
复制代码
演示类如下:
  1. package example;

  2. public class Demo {
  3.         public static void main(String[] args) {
  4.                 Computer computer  = new Computer();
  5.                 //虽然拿不到HiddenFile对象,但可以拿到方法。
  6.                 FileSetting filesetting = (FileSetting)(computer.creatInstance());
  7.                
  8.                 //通过接口对象设置隐藏文件可见
  9.                 filesetting.beVisible();
  10.         }
  11. }
复制代码
基于安全性,一个类要设置成私有,但是他能通过接口来暴露一些方便实用的方法供别人使用。




1 个回复

倒序浏览
  1. package example;

  2. public class Computer {
  3.         /*
  4.          * 私有类 HiddenFile
  5.          */
  6.         public HiddenFile creatInstance(){
  7.                 HiddenFile hf = new HiddenFile();
  8.                 return hf;
  9.         }
  10.        
  11.         private class HiddenFile implements FileSetting{
  12.                
  13.                 public void creat(){
  14.                        
  15.                 }
  16.                 public void delete(){
  17.                        
  18.                 }
  19.                 //隐藏文件想要可见必须通过工具文件夹选项等操作设置文件可见,不能用对象设置可见,因为隐藏文件无法操作
  20.                 //这时可以创建一个接口,相当于一个工具,这个接口有设置可见的功能
  21.                 //创建一个接口,然后通过接口设置隐藏文件可见
  22.                 public void beVisible(){
  23.                         System.out.println("文件可见啦");
  24.                 }
  25.         }
  26.        
  27. }
复制代码



没粘贴全。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马