0

私はJavaが初めてで、ネットでの質問について言及しましたが、満足していません。Javaの「ユーティリティクラス」とは何か知りたいですか?

誰でも例を教えてください。

ありがとう、デビッド

4

5 に答える 5

7

これは通常、静的メソッドのみを持つクラスです (おそらくプライベート コンストラクターがあり、インスタンス化/サブクラス化を防ぐために抽象/最終とマークされています)。他のクラスを使いやすくするためにのみ存在します。たとえば、値を操作するための一連の静的メソッドを提供したり、それ自体がサポートしていないString追加のアクションを実行したりします。String

通常、ユーティリティ クラスは、制御できるクラスでは動作しません。それ以外の場合は、通常、動作をそのクラス内に直接配置します。それらは OO の観点から見るとそれほどきれいではありませんが、それでも非常に便利です。

于 2010-10-13T06:56:17.620 に答える
1

Jon Skeet の答えを拡張するには、java.lang.Mathjava.util.Collectionsおよびjava.util.Arraysがそのようなクラスの典型的な例です。

于 2010-10-13T07:11:01.053 に答える
0

すべての静的メソッドを持ち、メンバー要素を持たないクラスです。

于 2014-12-17T20:49:56.833 に答える
0

パブリック クラス ユーティリティ {

public static boolean isNetworkAvailable(Context context) {
    ConnectivityManager connectivityManager = (ConnectivityManager) context
            .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetworkInfo = connectivityManager
            .getActiveNetworkInfo();
    return activeNetworkInfo != null && activeNetworkInfo.isConnected();
}

public static void unlockScreenOrientation(Activity activity) {
    activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
}

public static void lockScreenOrientation(Activity activity) {
    int currentOrientation = activity.getResources().getConfiguration().orientation;
    if (currentOrientation == Configuration.ORIENTATION_PORTRAIT)
    {
        activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    }
    else
    {
        activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
    }
}
// Get Http Post response
@Nullable
public static String getHttpResponse(String url, List<NameValuePair> nameValuePairs) {
    HttpClient httpClient = new DefaultHttpClient();

    HttpPost httpPost = new HttpPost(url);
    UrlEncodedFormEntity entity;
    try {
        entity = new UrlEncodedFormEntity(nameValuePairs);
        httpPost.setEntity(entity);
        HttpResponse response = httpClient.execute(httpPost);

        HttpEntity resEntity = response.getEntity();
        String res =  EntityUtils.toString(resEntity);
        return res;
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}

public static void CopyStream(InputStream is, OutputStream os) {
    final int buffer_size=1024;
    try
    {
        byte[] bytes=new byte[buffer_size];
        for(;;)
        {
            int count=is.read(bytes, 0, buffer_size);
            if(count==-1)
                break;
            os.write(bytes, 0, count);
        }
    }
    catch(Exception ex){}
}

public static JSONObject getJsonObjectFromXmlResponse(String xmlString) {
    JSONObject objectJson = new JSONObject();
    //JSONArray arrayJson = new JSONArray();

    XmlPullParser parser = Xml.newPullParser();
    try {
        parser.setInput(new StringReader(xmlString));
        int eventType = parser.getEventType();

        while (eventType != XmlPullParser.END_DOCUMENT) {
            String name;
            switch (eventType) {
                case XmlPullParser.START_TAG:
                    name = parser.getName();
                    if (name.equalsIgnoreCase("string")) {
                        String yourValue = parser.nextText();
                        //arrayJson = new JSONArray(yourValue);
                        objectJson = new JSONObject(yourValue);
                    }
                    break;
            }
            eventType = parser.next();
        }
    } catch (XmlPullParserException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (JSONException e) {
        e.printStackTrace();
    }
    return objectJson;
}

}

于 2016-09-24T05:02:16.563 に答える
0

日付、時刻、文字列トークナイザーなどの多くのものを含むユーティリティパッケージjava.utilがあります...それがあなたが話していることかどうかはわかりません。

于 2010-10-13T06:57:56.583 に答える