首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >最终的非静态数据成员

最终的非静态数据成员
EN

Stack Overflow用户
提问于 2014-07-29 17:45:47
回答 4查看 1.1K关注 0票数 0

如果不允许两次初始化finalstatic数据成员,那么如何在下面的示例中将x设置为我想要的值?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Temp6
{
    final int x;

    Temp6()
    {
        System.out.println(this.x);
        this.x=10;
    }

    public static void main(String[]s)
    {
        Temp6 t1 = new Temp6();
        System.out.println(t1.x);
    }
}

缺省情况下,Java会将x的值设为0,那么如何将其更改为10

EN

回答 4

Stack Overflow用户

发布于 2014-07-29 17:52:01

在Java中标记为final的变量只能初始化一次。

简单地用final int x;声明x并不能初始化它。因此,在Temp6构造函数中为x赋值是合法的。但是,您不能在构造函数之后为x分配不同的值。

也就是说,在以下内容中对t1.x的赋值:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public static void main(String[] s) {
  Temp6 t1 = new Temp6();
  t1.x = 11; // ERROR
}

是不合法的。

票数 0
EN

Stack Overflow用户

发布于 2014-07-29 18:37:50

在类构造函数中初始化最终变量。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class Blam
{
    private final int qbert;

    public Blam(int qbertValue)
    {
        qbert = qbertValue;
    }
}
票数 0
EN

Stack Overflow用户

发布于 2014-07-29 18:55:14

在代码中读取this.x应该会给出一个错误,因为final变量在声明时不会被初始化。t1.x应该为10,因为x肯定是在唯一构造函数的末尾赋值的。

:你必须交换构造函数中的这两行代码来编译它,它将是10。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Temp {
    int x; // declaration and definition; defaulted to 0
    final int y; // declaration, not initialized
    Temp() {
         System.out.println(x); // prints 0
         x = 1;
         System.out.println(x); // prints 1
         x = 2; // last value, instance.x will give 2

         System.out.println(y); // should be a compiler error: The blank final field y may not have been initialized
         y = 3; // definite assignment, last and only value, instance.y will be 3 whereever used
         System.out.println(y); // prints 3
         y = 4; // compile error: The final field y may already have been assigned
    }
}

我以前从来没有想过这一点,这里很有趣。Final field variables的行为类似于local variables in methods,它们在使用之前必须是explicitly assigned的(明确的赋值很难形式化,请参阅JLS,但它很符合逻辑)。

如果你想从外部给x赋值,你可以这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class Temp {
    private final int x;
    public Temp(int x) {
        this.x = x;
    }
    public int getX() { return this.x; }

    public static void main(String[] args) {
        Temp temp = new Temp(10);
        System.out.println(temp.getX()); // 10
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25021744

复制
相关文章
用GAN来做图像生成,这是最好的方法
前言 对于图像问题,卷积神经网络相比于简单地全连接的神经网络更具优势。 本文将继续深入 GAN,通过融合卷积神经网络来对我们的 GAN 进行改进,实现一个深度卷积 GAN。 如果还没有亲手实践过 GAN 的小伙伴可以先去学习一下上一篇专栏:生成对抗网络(GAN)之 MNIST 数据生成。 本次代码在 NELSONZHAO/zhihu/dcgan,里面包含了两个文件: dcgan_mnist:基于 MNIST 手写数据集构造深度卷积 GAN 模型 dcgan_cifar:基于 CIFAR 数据集构造深度卷
AI研习社
2018/03/19
1.4K0
用GAN来做图像生成,这是最好的方法
如何打造最好的电商网页?
译者:陈明艳 本文长度为5729字,预估阅读时间10分钟。 我们今天要向大家介绍的是电商网页的搭建和优化 从网站的顶层导航到交易内容,在打造电商页面时,会需要很多的考虑。 在今天的白板星期五,Ran
iCDO互联网数据官
2018/03/05
1K0
如何打造最好的电商网页?
开发 | 用GAN来做图像生成,这是最好的方法
前言 在我们之前的文章中,我们学习了如何构造一个简单的 GAN 来生成 MNIST 手写图片。对于图像问题,卷积神经网络相比于简单地全连接的神经网络更具优势,因此,我们这一节我们将继续深入 GAN,通过融合卷积神经网络来对我们的 GAN 进行改进,实现一个深度卷积 GAN。如果还没有亲手实践过 GAN 的小伙伴可以先去学习一下上一篇专栏:生成对抗网络(GAN)之 MNIST 数据生成。 专栏中的所有代码都在我的 GitHub中,欢迎 star 与 fork。 本次代码在 NELSONZHAO/zhihu/d
AI科技评论
2018/03/13
1.4K0
开发 | 用GAN来做图像生成,这是最好的方法
网页解析
网页解析完成的是从下载回来的html文件中提取所需数据的方法,一般会用到的方法有:
爱编程的小明
2022/09/06
3.2K0
网页解析
解决网页上内容不能复制的几种方法是什么_强制复制网页文字
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/03
1.8K0
用PHP解析XML为数组的方法
可扩展标记语言,标准通用标记语言的子集,一种用于标记电子文件使其具有结构性的标记语言。
魏杰
2022/12/23
1.1K0
深度解析用例设计方法
许多测试类书籍中都有大幅的篇章介绍用例的设计方法,如等价类划分,边界值,错误推断,因果图等。 但实际应用中这些理论却不能给我们很明确的行为指导,尤其是业务复杂,关联模块紧密,输入标准和输出结果间路径众多时,完全的遵循这些方法只能让我们在心理上得到一种满足,而无法有效的提高测试效率。 有时我们只有依靠以前项目的用例编写经验(或习惯),希望能在这一个项目中更加规范,但多数情况下我们规范的只是“书写的规范”,在用例设计上以前存在的问题现在依旧。 当好不容易用例基本完成,我们却发现面对随之而来的众多地区特性和新
企鹅号小编
2018/01/17
5680
深度解析用例设计方法
用python解析xml的几种方法
Xml: 1. 标签成对出现 2. 区分大小写 3. 标签要正确嵌套 4.开始部分:<?xml version="1.0" encoding="utf-8"?> 5.只能有一个根节点 6.节点可以有属
py3study
2020/01/13
1K0
程序员最好的工作是什么?
疑惑一 如何培养好的代码风格? 多看好项目的代码,提高自己的代码品味。品味一提高,很多东西忍不了,风格就自然上去了。当然了,别看出洁癖来就好。严于律己,宽于待人。比如一些好的开源代码是我们提高的最好途径。webkit 、chromium 还有一些文档行的google编程规范,webkit编程规范。 疑惑二 程序员工作内容太杂怎么办?如何提升自己? 1、横向发展寻求突破,这个需要你利用自己的空闲时间,可以是下班的时间,也可以是工作中的零碎空闲时间,进行充电,找自己感兴趣的方向,进行必要的学习,同时你要学会分享
程序员互动联盟
2018/03/16
8900
C++最好的图形库是什么?
世界上的GUI库多如牛毛,有的开源,有的收费,有的可以做手机app开发,有的可以做桌面应用,有的只能用在某个系统,有的支持跨平台。基于不同的编程语言,人们又开发出不同的图形框架,比如Java有AWT、Swing;C#有WinForm和WPF;C++有MFC、QT、wxWidgets等。在C++的库中,QT凭借对跨平台的支持、简单易用、开发效率高等特性,成为最受欢迎的GUI库之一。
Coding十日谈
2020/08/18
3.9K0
C++最好的图形库是什么?
PHP读取、解析eml文件及生成网页的方法示例
本文实例讲述了PHP读取、解析eml文件及生成网页的方法。分享给大家供大家参考,具体如下: php读取eml实例,本实例可以将导出eml文件解析成正文,并且可以将附件保存到服务器。不多说直接贴代码了。
用户2323866
2021/07/05
8310
python递归解析JSON(目前最好的
我们要完成的任务是输出JSON字典,并且对其中的每个元素,要输出它的所有父节点。那么很容易想到的做法就是递归解析。
py3study
2020/01/06
2.5K0
用innodb_ruby分析InnoDB的页管理
我创建了一个空表(模式无关紧要)来说明InnoDB页面管理结构的“最小”状态。space-page-type-regions模式将汇总同一页面类型的所有相邻区域的类型:
冬天里的懒猫
2020/08/22
5390
Octopress中嵌入ruby代码如何不被解析
用Octopress写博客即将快一年了,感觉自己用的还可以,并且借此熟练使用了Markdown,但是前几天写一篇关于如何在Octopress中集成多说评论的文章的时候,遇到了一个代码高亮的问题,就是如何处理代码块的问题。
技术小黑屋
2018/09/04
4520
论latex插入图片最好的方法!
在写过几篇论文后总结出来的一些写论文新手都会遇到的插入图片问题的最高效的解决方法,这是本人在摸索了很多次以后总结出来的方法希望后人可以少走些弯路。毕竟这种小问题读研的时候老师师兄师姐都不会告诉你的都是要靠你自己去解决的。
全栈程序员站长
2022/09/05
1.3K0
Ruby学习笔记之升级ruby的版本
升级ruby版本,有时候安装ruby的版本过低,需要进行升级,例如安装在centos6.7安装fpm需要ruby版本在1.9以上。
Jetpropelledsnake21
2019/04/25
3.2K0
你所写过的最好的Python脚本是什么?
这是网友在 Quora 上提的同名问答帖,本文摘编了排名前两名的答案。得到最多赞的用户介绍了他写的在Facebook上面感谢好友的脚本。排名第二的答案介绍了他写的点击一次自动字幕下载的脚本、IMDb信息查找脚本、theoatmeal.com网站漫画下载脚本和someecards.com下载脚本。该用户也因为这些脚本而得到了一份工作。 Akshit Khurana的答案,3.4k个赞同 使用脚本在Facebook上感谢五百多个在我生日那天给我祝福的朋友: 那是我21岁的生日,在那天发生了三件使得那天值得纪念的
小小科
2018/05/04
1.5K0
你所写过的最好的Python脚本是什么?
Ruby执行shell命令的六种方法
在Ruby中,执行shell命令是一件不奇怪的事情,Ruby提供了大概6种方法供开发者进行实现。这些方法都很简单,本文将具体介绍一下如何在Ruby脚本中进行调用终端命令。
技术小黑屋
2018/09/04
3.3K0
深入解析网页结构解析模块beautifulsoup
beautifulsoup(以下简称bs),是一款网页结构解析模块,它支持传统的Xpath,css selector 语法,可以说很强大了,下面我们就来着重介绍下它的用法。
Python进阶者
2021/04/19
2.5K0
深入解析网页结构解析模块beautifulsoup
点击加载更多

相似问题

在Ruby on Rails中解析JSON的最好方法是什么?

14

用ruby检查文件是否被修改的最好方法是什么?

30

用ruby衡量代码覆盖率的最好方法是什么?

15

用PHP解析大型嵌套XML表的最好方法是什么?

20

在网页上“换行”最好的方法是什么?

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文