Andorid中的日志都要定义一个TAG常量,那这个常量能不能改为变量自动赋值呢?

javamy002 2013-09-11 10:27:50
Andorid中的日志都要定义一个TAG常量
如:

private static final String TAG = "MainActivity";

但这样不是很麻烦吗?
能不能像.NET一样自动取得当前的类的类全名的功能
如:

private static readonly String TAG = System.Reflection.MethodBase.GetCurrentMethod().DeclaringType;

这样我就不用每次都去写这个TAG是什么啊。。。
...全文
473 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
javamy002 2013-09-11
  • 打赏
  • 举报
回复
private static final String TAG = "MainActivity"; =》 但这里没有办法写成 private static final String TAG = this.getClass().getSimpleName(); 啊,因为static 不能有this ------------------------- 同样,如果我写在 private static String TAG=""; Static { TAG = new MainActivety().getClass().getSimpleName(); } 但这样没有意思啊,因为我还是得写MainActivety这个 我的想法是,让MainActivity继承我的一个类,然后这个类会自动生明一个TAG的属性, 而这个TAG的值就为这个类的类名 然后用这个方法来代替每次类都要起明一个TAG="写动输入类名" 的效果 谢谢
凉凉二点凉 2013-09-11
  • 打赏
  • 举报
回复
好像不好自动生成 getClass().getSimpleName()只能这样....
javamy002 2013-09-11
  • 打赏
  • 举报
回复
相当于我这人常量是在类第一次加载的时候初始的 不然每一次都要手动定义这个类的名字不麻烦吗?而且这个变量的值就是类的名称,为什么不进行自动取啊
javamy002 2013-09-11
  • 打赏
  • 举报
回复

public class MainActivity extends Activity {
    private static final String TAG = "";//定义一个静态字符串
    
    static MainActivity()
    {
    	TAG =  this.getClass().getName();//类初始化的时候进行赋值
    }
}
荒颜 2013-09-11
  • 打赏
  • 举报
回复
private static final String TAG = XXX.class.getSimpleName(); 这能这样了 没有自动获取的吧 再说你复制下类名也不花时间

80,472

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧