「java获取静态属性」java类的静态属性和全局变量
本篇文章给大家谈谈java获取静态属性,以及java类的静态属性和全局变量对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、JAVA里静态的属性怎么在jsp里访问?
- 2、看Java怎样使用静态块读取属性文件代码
- 3、JAVA什么是类和对象的静态属性
- 4、Java:关于单例中的静态属性的getter、setter方法,求解
- 5、java静态资源(静态方法,静态属性)是程序一运行就加载到jvm中,还是当被调用的时候才进行加载呢?
- 6、Java静态方法获取所属类的信息
JAVA里静态的属性怎么在jsp里访问?
JSP中的两种包含静态页面的方法
第一种:include指令:当JSP转换成Servlet时引入指定文件pre t="code" l="html"%@ page contentType="text/html; charset=GB2312" language="java" errorPage=""%
%@ include file="head.jsp"%
%@ include file="body.jsp"%
%@ include file="tail.jsp"%第二种:jsp:include动作元素:当JSP页面被请求时引入指定文件
pre t="code" l="html"%@ page contentType="text/html; charset=GB2312" language="java" errorPage=""%
jsp:include page="head.jsp"/
jsp:include page="body.jsp"/
jsp:include page="tail.jsp"/
第二种方法可以很方便的用jsp:param来向所包含页传递参数,方法如下:
pre t="code" l="html"%@ page contentType="text/html; charset=GB2312" language="java" errorPage=""%
jsp:include page="head.jsp"/
jsp:include page="body.jsp"
jsp:param name="uid" value="username"/
jsp:param name="pwd" value="password"/
/jsp:include
jsp:include page="tail.jsp"/
看Java怎样使用静态块读取属性文件代码
private static String driver =null;
private static String url = null;
private static String user = null;
private static String password = null;
private static BasicDataSource ds;
static{
//读取程序外的.properties 文件
//需要.properties文件的包路径
Properties props = new Properties();
try {
String path ="db.properties";
props.load(
DBUtils.class.getResourceAsStream(path)
);
//properties对象.getProperty("字符串")
driver=props.getProperty("driver");
url=props.getProperty("url");
user=props.getProperty("user");
password=props.getProperty("password");
ds = new BasicDataSource();
ds.setDriverClassName(driver);
ds.setUrl(url);
ds.setUsername(user);
ds.setPassword(password);
Class.forName(driver);
} catch (Exception e) {
e.printStackTrace();
}
}
这是一个JDBC读取配置文件连接数据库的示例代码,供参考!
JAVA什么是类和对象的静态属性
所谓静态属性,就是用static修饰的变量,例如:public static String test="测试字符串";
这种属性访问时只能是:类名.变量名 --它不能用对象访问
另外,类中的方法也可以声明为static(静态的),访问规则一样
凡是用static声明的成员全部是属于类的,而非static修饰的成员是属于每个对象的
希望对你有帮助 :)
Java:关于单例中的静态属性的getter、setter方法,求解
InitConfig类是个单例类
你这个是错误的!!给你一个单例类看看吧。
public class InitConfig{ private String failedDir;private static InitConfig instance;
private InitConfig(){}//主要1
public static InitConfig getInstance(){
if(instance==null) instance=new InitConfig();
return instance;
}//主要2
public String getFailedDir() {
return failedDir;
}
public void setFailedDir(String failedDir) {
InitConfig.failedDir = failedDir;
}
}
java静态资源(静态方法,静态属性)是程序一运行就加载到jvm中,还是当被调用的时候才进行加载呢?
当类第一次被调用时加载(静态方法,静态属性的加载就是类加载) 。
1、类中的静态属性会被加入到类对象(也可以叫做类的模板,是类的描述) 的构造器中,静态方法也会被加入到类对象中。
2、当第一次使用类时,JVM会通过类加载器,加载类对象,从而初始化静态属性,并装入类的方法,包括静态方法和实例方法(方法不会被调用,只是加载,从这个意义上来说,静态方法和实例方法是类似的)。
3、当创建类的实例对象时,JVM会调用类的构造器,从而初始化类的属性。
扩展资料:
类(包括静态方法、属性)加载过程:
一、加载。
根据一个类的全限定名(如cn.edu.hdu.test.HelloWorld.class)来读取此类的二进制字节流到JVM内部。
将字节流所代表的静态存储结构转换为方法区的运行时数据结构(hotspot选择将Class对象存储在方法区中,Java虚拟机规范并没有明确要求一定要存储在方法区或堆区中)转换为一个与目标类型对应的java.lang.Class对象。
二、连接。
1、验证。
验证阶段主要包括四个检验过程:文件格式验证、元数据验证、字节码验证和符号引用验证;
2、准备。
为类中的所有静态变量分配内存空间,并为其设置一个初始值(由于还没有产生对象,实例变量将不再此操作范围内);
3、解析。
将常量池中所有的符号引用转为直接引用(得到类或者字段、方法在内存中的指针或者偏移量,以便直接调用该方法)。这个阶段可以在初始化之后再执行。
参考资料:
百度百科--Java类加载器
百度百科--JVM
Java静态方法获取所属类的信息
在JAVA中动态执行类的静态方法
/*
在JAVA中,通过Class.forName()方法可以动态决定加载哪一个类,这个功能对于相同接口的不同实现来讲非常有用。比如对于设计好的数据库连接池接口,我们可以有多种的接口实现类来完成相同的功能,同时用户可以简单的通过修改配置文件来指定实际使用哪一个实现类,在源代码里面通过读取配置文件信息,并用Class.forName(configClassName).getInstance()就可以构造一个特定的实现类实例,而不用每次修改源代码。这样对于程序来讲只用关心接口的定义,用户只用进行配置文件的设置就完成了同一功能的不同实现的切换。
但是如果实现类需要通过静态方法来进行初始化的时候,动态加载的过程就会复杂一些。同样的以数据库连接池为例,通常连接池的构造函数都会被定义为私有的,而通过自定义的getInstance()静态方法来得到唯一实例。这种情况下简单的通过Class.forName().getInstance()就无法正确构造实例。
幸好JAVA所提供的反射机制(Reflection)为我们提供了完整了探悉类内部结构的方法。通过反射机制,我们能够完成基本上所有的运行时决定的动作(虽然这一实现要比其他动态语言,比如PHP,的eval()的使用要复杂的多)。
下面通过实际的例子说明如何在运行时动态访问类的静态方法。
java获取静态属性的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java类的静态属性和全局变量、java获取静态属性的信息别忘了在本站进行查找喔。
发布于:2022-12-23,除非注明,否则均为
原创文章,转载请注明出处。