適配器模式的應用

1.適配源類:java.util.Properties

2.適配目標類:FileIO

3.適配器 FileProperties

?

package fileio;import java.io.IOException;public interface FileIO {public void readFromFile(String fileName) throws IOException;public void writeToFile(String fileName) throws IOException;public void setValue(String key , String value);public String getValue(String key);
}

?

package fileio;import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;public class FileProperties implements FileIO {private Properties p;public FileProperties(Properties p) {this.p = p;}@Overridepublic void readFromFile(String fileName) throws IOException {p.load(new FileInputStream(new File(fileName)));}@Overridepublic void writeToFile(String fileName) throws IOException {p.store(new FileOutputStream(new File(fileName)), "");}@Overridepublic void setValue(String key, String value) {p.setProperty(key, value);}@Overridepublic String getValue(String key) {return p.getProperty(key);}}

?

package fileio;import java.io.IOException;
import java.util.Properties;public class Client {public static void main(String[] args) {FileIO fi = new FileProperties(new Properties());try {fi.readFromFile("test.txt");fi.setValue("name", "tisa");fi.setValue("age", "12");fi.setValue("school", "CCNU");fi.writeToFile("out.txt");} catch (IOException e) {e.printStackTrace();}}
}

?

轉載于:https://www.cnblogs.com/tisakong/p/4708443.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/273075.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/273075.shtml
英文地址,請注明出處:http://en.pswp.cn/news/273075.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

nginx php7提速,nginx+php7-fpm 性能提升幾倍跟蹤實踐結果并優化

nginxphp7-fpm 性能提升幾倍跟蹤實踐結果并優化nginxphp7-fpm 性能提升幾倍,跟蹤實踐結果并優化歷史ubuntu服務器使用的apachephp5,現在使用nginuxphp7-fpm方式,看效果圖,啥也不說了。強烈推薦升級到php7,當然升級中基…

Where條件的in里面放太多數據導致很慢

比如:select * from TableA where ID in (42,216,219,230,231,220,249,250,221,251,252,217,253,255,256,254,257,258,1804) 52W數據,查詢速度19386ms,好慢怎么辦?程序都卡死了。 那么試一下百度搜索到的優化方式? 1.將…

inur new.php id,Cmsez(隨易)全站系統注入0day

allinurl:"owered by CMSEZ" comments.php inurlowered by CMSEZ//commentsinclude "mainfile.php";$artnew article();//設定$confirmyes;//yes:需要管理員認證后才能顯示,no:直接顯示$membernew member();$user_info$member->member_auth();$ulevel$u…

matlab地球衛星模型,地球衛星三維運行軌道MATLAB仿真

地球衛星三維運行軌道MATLAB仿真1、問題的描述3 軌道上運行的地球衛星,根據牛頓第二定律Fma以及萬有引力定律F-GmME*r/r,3可得a-GME*r/r,即x -GME*x/r3 3 y -GME*y/r; z -GM*z/r3E (1)式中,(x,y,z)表示衛星…

LeetCode 3. Longest Substring Without Repeating Characters

原題鏈接在這里:https://leetcode.com/problems/longest-substring-without-repeating-characters/ 題目: Given a string, find the length of the longest substring without repeating characters. For example, the longest substring without repea…

The mook jong 計數DP

The mook jong ZJiaQ為了強身健體,決定通過木人樁練習武術。ZJiaQ希望把木人樁擺在自家的那個由1*1的地磚鋪成的1*n的院子里。由于ZJiaQ是個強迫癥,所以他要把一個木人樁正好擺在一個地磚上,由于木人樁手比較長,所以兩個木人樁之間…

java executequery,JDBC中的execute(),executeQuery()和executeUpdate()方法有什么區別?

一旦你創建了Statement對象可以使用的即聲明接口的執行方法之一執行它,execute(),executeUpdate()和executeQuery()。的execute()方法:該方法是用于執行SQL DDL語句,它返回一個布爾值,指定的天氣ResultSet對象可以被檢…

ThinkPHP- 3.1

基礎: 1. 基礎概念 LAMP LAMP是基于Linux,Apache,MySQL和PHP的開放資源網絡開發平臺。這個術語來自歐洲,在那里這些程序常用來作為一種標準開發環境。名字來源于每個程序的第一個字母。每個程序在所有權里都符合開放源代碼標準&am…

java 判斷域密碼到期提醒,Exchange Server 2010下,檢測用戶密碼到期通知提醒腳本...

#############################################Author:wangtingdong#For:檢測AD密碼過期時間并郵件通知#Version:1.0##############################################Import-Module Activedirectory#1和2選擇一個執行#1檢索出指定OU里不包含設置了永不過期及禁用的賬戶#$allad…

php中定義css樣式的好處,CSS的優點和缺點分別是什么

CSS的優點有:豐富的樣式定義、易于修改、結構清晰、多頁面使用等;CSS的缺點:瀏覽器支持不一樣具有兼容性、不能明確指定繼承性CSS的主要哦作用是為HTML頁面添加樣式,使得頁面更加美觀。接下來在文章中將為大家詳細介紹CSS的優點與…

前端工具整理

代碼的規范】 http://www.css88.com/doc/codeguide/ 【Viewport Sizes尺寸查詢】 http://viewportsizes.com/?filter 【在線小工具】 http://www.xueui.cn/design/online-tools 【px,em,rem單位轉換工具】 http://pxtoem.com/ 【json格式化】 http://jsonlint.com/ 【在線…

mysql無法本地連接,本地連接騰訊云Mysql失敗問題

騰訊云主機中MySQL無法遠程連接的解決辦法在遠程主機上,我開啟了 mysql服務,用 phpmyadmin 可以打開,比如說用戶名為 root,密碼為 123456。不過用 Mysql 客戶端遠程連接時卻報了錯誤,比如 Mysql-Front 報了如下Access …

python getcwd 轉義,Python os.getcwd() 方法

Python os.getcwd() 方法概述os.getcwd() 方法用于返回當前工作目錄。語法getcwd()方法語法格式如下:os.getcwd()參數無返回值返回當前進程的工作目錄。實例以下實例演示了 getcwd() 方法的使用:#!/usr/bin/python# -*- coding: UTF-8 -*-import os, sys…

函數_方法_的四種調用方式

class Program{/// <summary>/// 無參數&#xff0c;無返回值/// </summary>/// <param name"args"></param>static void n1(){Console.WriteLine("這是第一種方法");}/// <summary>/// 有參數&#xff0c;無返回值/// <…

php_cawler_html嵌套標簽清洗

主要處理 嵌套 div&#xff0c;正則無法很好的處理清洗 比如文本&#xff1a; 想要移除 class quizPutTag 的div &#xff0c;內部可能嵌套的還有未知層級的div【前提是html文本段是閉合標簽的】 這是<div>test<div class"quizPutTag">test</div>…

php添加項目,thinkphp添加一個項目

假如我們想新建一個app項目&#xff0c;創建一個app文件夾&#xff0c;在app目錄下 新建一個index.php文件加上入口文件引用define(APP_DEBUG,TRUE);require_once(../ThinkPHP.php);訪問你剛建立的文件&#xff0c;這時候app目錄里面自動新建了所需的文件app/conf/config.php這…

PHP中的mb_convert_encoding與iconv函數介紹

iconv函數庫能夠完成各種字符集間的轉換&#xff0c;是php編程中不可缺少的基礎函數庫。 1、下載libiconv函數庫http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.9.2.tar.gz&#xff1b; 2、解壓縮tar -zxvf libiconv-1.9.2.tar.gz; 3、安裝libiconv &#xff03;confi…

php遍歷視頻文件,php使用glob函數遍歷文件和目錄詳解

php glob()函數返回匹配指定模式的文件名或目錄。因此我們可以使用glob函數來查找文件&#xff0c;也可以實現目錄的遍歷。函數說明&#xff1a;array glob ( string $pattern [, int $flags ] )功能&#xff1a;尋找與模式匹配的文件路徑,返回包含匹配文件(目錄)的數組(注&…

GitHub 建立遠程倉庫

終端所有信息: Last login: Fri Aug 14 08:58:01 on console wuxiaoyuan:~ lan$ ls -al ~/.ssh ls: /Users/lan/.ssh: No such file or directory wuxiaoyuan:~ lan$ mkdir .ssh wuxiaoyuan:~ lan$ cd /Users/lan/.ssh wuxiaoyuan:.ssh lan$ ssh-keygen -t rsa -b 4096 -C &qu…

朱建輝php,朱建輝/laravel-bjyblog

鏈接簡介這個項目是把 thinkphp-bjyblog 用 laravel 框架重構后的產物&#xff1b;下圖中的白俊遙博客即是使用 laravel-bjyblog 開發的個人博客安裝使用可以通過以下兩種命令安裝&#xff1b;composer create-project baijunyao/laravel-bjyblog blog && cdblog &…