`
iloveflower
  • 浏览: 79777 次
社区版块
存档分类
最新评论
  • iloveflower: 呵呵。好好学习。。。。。。。。。。。。
    java 读书
  • Eric.Yan: 看了一点,不过是电子版的……你这一说到提醒我了,还要继续学习哈 ...
    java 读书

关于在java中定义常量 和加log4j

 
阅读更多
http://www.blogjava.net/SmileFace/archive/2006/12/21/89179.html

首先:java没有叫 全局变量 的东西(有全局变量还叫OO吗?);原因:Java将所有设计都基于对象的基础上。Java的全局变量只能对一个类内部而言。能够在类内的任何地方使用的变量就是全局变量,而只在某个特定的函数或者局部的程序块内使用的变量则是局部变量。

所以:声明为static的变量实质上就是全局变量。当声明一个对象时,并不产生static变量的拷贝,而是该类所有的实例变量共用同一个static变量。

使用:java中只有static和非static变量,这个属于每个类的,如果需要全局变量比如PI(3.14...),可以写一个类Math,定义static变量PI,调用Math.PI就可以使用了,这样就达到我们使用全局变量的目的了。



1、将一个 package 中需要的常量集中到一个 XyzConstants 之类的 interface 里声明,
就像普通的 field 那样声明就行了。
public interface SomeConstants {
   public intPORT = 80;
   public String IP = "166.111.16.1";
   public boolean test = true;
} 就可以。
用到常量的类 implements 这个接口 .. 简单情况这样就行乐。

2、更 formal 的做法是写一个类维护所有的常量,负责从配置文件(例如properties文件或xml文件)读取所有的常量的值。
可以在一个 static {} 块里从配置文件中初始化所有 static 的变量。 这样有利于提高软件的可配置性。改些东东不用动代码,比较好。
最好要有 config Tool 负责写配置文件。

3.其他说明:

定义一个公开类,在里面加static 变量。
public class infos{
  private infos(){
  }
   public static int PORT = 80;
   public static String IP = "166.111.166.111";
   public static boolean test = true;
   public static finale String MYNAME="zzz"; //定义中用了finale,就是不能改变指的。
}
在别的class中调用这些变量就是: infos.PORT,infos.IP,infos.test,infos.MYNAME
多个class交互时可以通过改变这些变量的值来传递信息。比如 infos.test被别的class改成了false,可能表示某一件事已经失败或已经做过,其它class就可以提前知道这些信息。


Log4J Logging Inside Eclipse Console 

We use Apache Log4J for performing Logging at runtime for debugging Java Application. Eclipse is widely used IDE in Java Development environment, so it becomes essential to monitor the logs getting generated while writing java code in eclipse itself. To achieve this following steps need to taken.

1) Goto Package Explorer
This can be done by clicking on Window Menu, Click on Show view and select Package Explorer. Now you will see the Package Explorer window on the left screen/

2) Import Apache Log4J Library to Java Project
This can be achieve by right click the Java project, select Build Path and then Configure Build Path. Select Libraries Tab and click on Add External JAR’s. Now browse to the Log4J Library and click on OK.

3) Writing Java Code
To use Log4J package inside we need to import necessary Log4j classes. This can be achieved by writing following code.


import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Logger;
Example:


package com.test;

import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Logger;

public class test {
protected final static Logger log = Logger.getLogger(test.class);
public test() {
if(log.isDebugEnabled()) {
log.debug("Constructor Called For Test Function");
}
}
分享到:
评论

相关推荐

    log4j中文手册

    Appender在Log4j中是负责将日志输出到目的地的组件。Log4j提供了多种Appender,比如ConsoleAppender用于将日志输出到控制台,FileAppender用于将日志输出到文件,DailyRollingFileAppender用于每天自动滚动写入到...

    log4j-1.2.15-apidocs.rar

    在Java世界里,日志处理是不可或缺的一部分,而Log4j作为一款经典的日志框架,以其强大的功能和灵活的配置赢得了广大开发者们的青睐。本文将基于"Log4j 1.2.15"的API文档,深入剖析其核心概念、使用方法以及关键组件...

    log4j 源代码 log4j

    在实际开发中,开发者可以通过设置`log4j.rootLogger`属性来定义根Logger的级别和Appender。例如: ``` log4j.rootLogger=DEBUG, FILE log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE....

    tomcat下struts2的log4j日志配置.doc

    在这个例子中,`struts.log4j.rootLogger`定义了日志的基本级别和输出目标,其他常量则指定了具体的输出格式和Appender。 总的来说,配置Tomcat下的Struts2日志系统主要涉及以下几个步骤: 1. 添加Log4j库到项目类...

    使用异常处理程序错误和log4j记录错误PPT学习教案.pptx

    异常处理机制和Log4j记录错误 从给定的PPT文件中,我们可以了解到异常处理机制和Log4j记录...本PPT文件为我们提供了关于异常处理机制和Log4j记录错误的详细知识点,我们可以通过学习这些知识点来提高自己的编程能力。

    log4d Delphi中好用的轻量级日志类

    这个库的设计灵感来源于Java的log4j框架,旨在帮助程序员有效地跟踪和调试应用程序中的错误和异常,同时保持代码的简洁性。本文将深入探讨log4d的核心组件和主要特性。 1. **组件介绍** - `Log4D.pas`:这是log4d...

    log4cxx for mac开发库

    `log4cxx` 是一个适用于 C++ 的日志框架,它是 Apache 软件基金会(ASF)的开源项目,灵感来源于 Java 的 `log4j`。本文将详细介绍如何在 macOS 环境下使用这个库进行开发。 1. **log4cxx 概述** `log4cxx` 是一个...

    log4cpp-1.1.3.tar.gz源码和测试代码

    C++社区中,log4cpp是一个广泛应用的日志库,它提供了灵活的日志记录功能,类似于Java中的log4j。本文将深入探讨log4cpp 1.1.3版本的源码和测试代码,以期理解其工作原理和应用方法。 首先,log4cpp是一个开源的C++...

    log4cxx-0.10.0(编译产物)

    Log4cxx是Apache软件基金会开发的一个C++版的日志系统,它是基于Java的log4j日志框架设计的,提供了类似的功能和接口,为C++程序员提供了高效、灵活的日志管理工具。这次我们讨论的是log4cxx-0.10.0的编译产物,这是...

    slf4j-1.6.6

    SLF4J(Simple Logging Facade for Java)是Java日志记录的一个接口层,它为各种日志框架,如Log4j、Java Util Logging、Logback等提供了一个统一的API,使得开发者能够在运行时选择合适的日志实现。SLF4J 1.6.6是该...

    Log for Delphi

    Log4D 的设计灵感可能来源于 Java 的著名日志框架 Log4j,它在 Delphi 社区中被广泛使用,为 Delphi 应用程序提供类似的功能。 在提供的文件列表中,我们可以看到以下几个关键文件: 1. **Log4DNM.pas**:这可能是...

    Java开发手册1.7.0

    手册中提到,异常日志应该遵循一定的规则,例如,使用 log4j 或 logback 来记录日志,日志级别应该遵循一定的规则等。 三、单元测试 * 单元测试是 Java 语言中的一个重要概念。手册中提到,单元测试应该遵循一定的...

    Java开发手册编码规范.docx

    在Java中,日志通常使用log4j或者java.util.logging包下的类。日志规约通常使用DEBUG、INFO、WARN、ERROR等级来记录日志信息。 三、单元测试 单元测试是Java开发手册编码规范的重要组成部分,涵盖了单元测试的基本...

    Java算术表达式计算类库 ExpressionJ

    例如,你可以定义一个名为"myFunction"的函数,然后在表达式中使用它,如`myFunction(x, y)`。 ### 5. 错误处理与调试 当表达式解析或计算过程中出现错误时,ExpressionJ会抛出异常,帮助开发者快速定位问题。此外...

    android中log对象的使用

    然后在对应的Activity类`LogDemo.java`中,定义一个静态常量`ACTIVITY_TAG`作为日志标签,并在`onCreate`方法中初始化Button。当Button被点击时,调用不同的Log方法输出不同级别的信息。 ```java public class Log...

    使用异常处理程序错误和logj记录错误PPT学习教案.pptx

    本PPT学习教案主要讲解了Java中异常处理机制的概念、try、catch、finally语句的使用、throw和throws关键字的区别、log4j日志记录异常等内容。 一、什么是常量? 在Java中,常量是指不能被改变的值,例如数字、字符...

    JDK1.8Java代码开发规范

    * 异常日志应该使用合适的格式,例如使用log4j或日志框架。 * 异常日志应该使用合适的语言,例如使用英文或中文。 * 异常日志应该使用合适的内容,例如使用简单、清晰的语言。 JDK1.8 Java 代码开发规范是一个非常...

    JAVA编码习惯和几款JAVA性能分析工具

    6. **避免字符串字面量的重复定义**:如果一个字符串在多处被使用,应将其定义为常量,以减少内存开销和提高代码可读性。例如: ```java public static final String MY_APP = "My Application"; private void ...

    JAVA练习题.pdf

    - **配置log4j**:在Java程序中使用log4j记录日志,需要对log4j进行配置,包括设置根日志记录器,添加输出目的地(appender),配置日志格式,以及指定输出级别等。例如`log4j.rootLogger=info, stdout, file`设置了...

    java基础测试题(附答案)

    11. **习题训练11** - 在log4j配置中,如果rootLogger设置了info级别,意味着info和更高级别的日志(如error)会被记录。因此,`logger.info("记录 info 日志 ")`会被输出。 以上这些题目涉及的Java知识点包括:...

Global site tag (gtag.js) - Google Analytics