如何在java中实现c语言中的联合的功能??? 10

ava中没有联合这一概念,但是要求把c程序翻译成java,c中碰到了联合,求教各位在java中怎么处理,实现c语言中的联合功能... ava中没有联合这一概念,但是要求把c程序翻译成java,c中碰到了联合,求教各位在java中怎么处理,实现c语言中的联合功能 展开
 我来答
郭某人来此
2015-09-11 · TA获得超过1646个赞
知道答主
回答量:952
采纳率:100%
帮助的人:90.2万
展开全部
C语言可以用一个指针值指向内存的任何一个空间,当然有很多非法的空间会被检测出来,所有乱用指针,编译器或者系统就会报错。
但JAVA不同,JAVA 通过一个引用,来指向内存的一个空间,换句话说,不是你想指向哪里,就指向哪里,因为你定义个变量时,这个空间由系统分配,同样,你定义一个引用,这个空间同样由系统分配,而我们做的事情只是将这两个由系统分配的空间进行一个指向关联,没有一个随心所欲的内存指向
区别很明显吧,我相信这样解释,连一个没有任何C基础的人都能明白,呵呵,因为这是我第一次做任务来答题,所以详细一点,也啰嗦一点,如果还不明白,我们可以进一步交流。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mohunk10
2013-08-14 · TA获得超过754个赞
知道小有建树答主
回答量:466
采纳率:100%
帮助的人:454万
展开全部
从占用内存上看,c语言的联合体共用同一块内存,应该与Java中的单例很类似。联合体映射为单例类应该能够解决你的问题。
追问
额,可以说的再具体点吗,针对这个联合来说
typedef union
{ unsigned long ul[2];
unsigned int ui[4];
unsigned char uc[8];
} DataE;
追答
//单例模式
public enum Union {
INSTANCE;
private Object obj;
public Object getObj() {
return obj;
}
public void setObj(Object obj) {
this.obj = obj;
}

public static void main(String[] args) {
Union u = Union.INSTANCE;
u.setObj(new int[]{1,3,5});
int[] a = (int[]) u.getObj();
System.out.println(a.length);
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2018-05-14
展开全部
用类, 只有这样。
class DateE{
long ul[2];
int ui[4];
byte uc[8];

//get/set方法

}

java没有 unsigned long,如果数很大就换成BigDecimal
,或 BigInteger
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jiangzaifu
2013-08-14 · TA获得超过566个赞
知道小有建树答主
回答量:1169
采纳率:0%
帮助的人:443万
展开全部
用java调用C程序实现,百度一下,你就知道!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
孙雷1992
2013-08-14 · 超过11用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:38.1万
展开全部
会用hibernate框架吗?可以采用级联操作
更多追问追答
追问
java小白,刚接触,不懂,
typedef union
{ unsigned long ul[2];
unsigned int ui[4];
unsigned char uc[8];
} DataE;
这是c里面定义的联合,就是翻译到java里面不知道怎么实现????
追答
没学过C,你可以告诉我你的需求
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式