169it科技资讯
169it -->


当前位置:  技术问答>java相关

请教各位高手一个简单的问题----关于常量????

    来源: 互联网  发布时间:2015-11-21

我学习 java 也有一段时间了,不过到现在为止我还没有找到方法来生成一个真正的常量???????????????

对于基本类型
我们可以使用 final 来建立常量!!
单对于从 Object 类派生的其他类型数据就只能是使他的指针是常量了.
没有办法使数据对象不可改变了.

比如: fianl Date d = new Date();

现在我仍然可以改变 d 所表示的时间.

我要怎么才能建立一个真正的常量.

|
对啊,C++中也是如此,你刚才的
fianl Date d = new Date(),
实际上d是一个常量句柄,也就是说句柄不能够改变但是其中的内容是可以改变的
如果为
final Int i=1000;
则常量是一个具体的数值,这时候就不允许改变了。

|
在所在类里面是常量,你初始化这个类的实例的时候,常量也是确定了。
final 就代表只能一次赋值。

|
final只能是令你的对象句柄为常量,没有你所说的功能。
我觉得你要实现的话只能另外想办法,可以考虑wojue()的方法,创建一个类

|
把类里的所有变量都指定为常量

|
java好象没这种功能?
本页相关标签:

    
相关技术文章:
    ▪请教!可能是一个简单的问题。

     请问怎样在一个窗口(JFrame)中以“模态”方式显示另外一个窗口(JFrame)。 | 调用另外一个界面使用jdialog就行,参考一下api关于jdialog的构造器说明就知道,将modal设定为true即可 比如JDialog(Frame owner, boolean modal),假设 原程序界面为frame,调用如下: jdialog1(this,true);   | JFrame没有模态的概念 不过如果想做成这个样子,可以试试下面的思路 设JFrame A和B,A打开B,直到B返回才能执行A 那么可以让A调用B后,进入等待或者休眠状态(线程) 然后在B的退出方法中增加唤醒A的代码,......


    ▪数据库记录集

     我用  Statement stmt = dbConnection.createStatement(1005, 1008);       ResultSet dataResultSet = stmt.executeQuery(SQL); 怎样判断 dataResultSet  是否为空?? | if (dataResultSet.next()) { 不空 } else { 空 } | if (dataResultSet.next()) { 不空 } else { 空 } ......


    ▪数据库记录集的问题??

     我用  Statement stmt = dbConnection.createStatement(1005, 1008);       ResultSet dataResultSet = stmt.executeQuery(SQL); 怎样判断 dataResultSet  是否为空?? | if(dataResultSet.next()){ } else{ //nothing } | if (dataResultSet.next()) { 不空 } else { 空 } ......


 
最新技术文章:
    ▪visual age for java 与 webphere studio 的区别?

     各位大侠:     请问visual age for java 与 webphere studio 的区别? | visual age for java已经不在出新版本了,WSAD是它的下一代产品。 | visual age for java最多到版本4,现在WSAD已经版本5了,WTE也已经到版本5了。 ......


    ▪入门书看完了一本.可还有很多不明白,谁介绍本书我看?

     看完了<JSP动态网页入门实务>,可感觉还好多东西都不懂.有好的书推荐一本.. 探索JSP的小菜鸟..望大家多多指教.因为我实在是太菜了. | jsp核心技术详解 good! ......


    ▪一个数据库操作javabean的问题

     package mydb; import java.sql.*; public class Dbconn { String sDBDriver="org.gjt.mm.mysql.Driver";     String sConnStr="'jdbc:mysql://localhost/sinomos?useUnicode=true&characterEncoding=UTF8','root','123456')";     Connection conn=null;     ResultSet rs=null;     public Dbconn()     {         try{             Class.forName(sDBDriver);         }         catch(java.lang.ClassNotFoundException e)         {             System.err.println(e.getMessage());         }     }    public void executeInsert(String sql)     {         try       ......


 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2017,169IT.COM,E-mail:www_169it_com#163.com(请将#改为@)

浙ICP备11055608号