「Android/クラスを動的に読み込む」の版間の差分
提供: 初心者エンジニアの簡易メモ
(ページの作成:「==動的にクラスを読み込む== -SampleFactory.java try { // 同一ライブラリの場合 // Class clazz = Class.forName(Sample1.class.getPackage().get...」) |
(→別ライブラリの場合は) |
||
| 行15: | 行15: | ||
==別ライブラリの場合は== | ==別ライブラリの場合は== | ||
| − | + | 以下2つを確認する | |
| + | *classがpublicになっているか | ||
| + | *constructがpublicになっているか | ||
2016年12月8日 (木) 16:13時点における最新版
動的にクラスを読み込む
-SampleFactory.java
try {
// 同一ライブラリの場合
// Class clazz = Class.forName(Sample1.class.getPackage().getName() + ".Sample1");
// 別のライブラリの場合でもok
Class clazz = Class.forName("jp.co.example.Sample1");
Object worker = clazz.newInstance();
if(worker instanceof Sample1) {
return (Sample1)worker;
}
} catch (Exception e) {
;
}
別ライブラリの場合は
以下2つを確認する
- classがpublicになっているか
- constructがpublicになっているか
