小编Joa*_*uer的帖子

无法在C中实现的C++特性?

我已经读过C++是C的超集,并通过创建对象提供实时实现.此外,C++对现实世界是封闭的,因为它充满了面向对象的概念.

C++中有哪些概念不能在C中实现?

  1. 有人说我们不能在C中编写方法,那么我们怎样才能有不同的风格printf()呢?例如,printf("sachin");将打印sachinprintf("%d, %s",count ,name);打印,1,sachin假设count是一个整数,其值为1,name是一个初始化的字符数组"sachin".
  2. 有人说数据抽象是用C++实现的,那么结构呢?

c c++

8
推荐指数
3
解决办法
2048
查看次数

这是否可以编写Marker接口

我已经完成了以下教程:

http://www.javaworld.com/community/node/2915

在阅读完上面的文章之后,我觉得,编写Marker接口是不可能的,因为,如何指导编译器,它是什么标记,它嵌入到Marker接口的.class文件中.

如果我错了,请纠正我.欢呼:)

java serialization

8
推荐指数
2
解决办法
9948
查看次数

Java Iterator实现 - next()和hasNext()强制执行命令

我有一个实现java.util.Iterator要求next()始终通过调用来进行调用hasNext().(这是因为结果在多线程环境中异步返回,并且永远不清楚可能会有多少结果).

在JavaDoc中正确记录它是否"正确"然后抛出一个RuntimeException如果违反了它.或者这会使Iterator接口拉得太远?

所有的想法赞赏?

java concurrency iterator

8
推荐指数
3
解决办法
3万
查看次数

JUnit 4.8需要什么java版本

我试图用1.5 JRE运行JUnit测试,但得到错误消息:

java.lang.UnsupportedClassVersionError: Bad version number in .class file

当我切换到JRE 1.6(实际上是一个JDK,但这不重要,对吗?)时,每件事都可以正常工作.

所以问题是:

  • 我们真的需要Java 6用于当前的JUnit版本吗?
  • 什么是最新的JUnit版本,适用于Java 5?

java junit version

8
推荐指数
2
解决办法
1万
查看次数

在Java中,实例和类型转换(即(ClassName))如何在代理对象上工作?

Java为给定接口生成代理类,并提供代理类的实例.但是当我们输入代理对象到我们的特定对象时,java如何在内部处理它?这被视为特殊情况吗?

例如,当我通过使用提供的接口中的方法传递接口Java创建的代理类来创建代理对象并且提供此类的对象(即)时,我有类OriginalClass并且它实现.如果我的理解是正确的,那么请你回答以下问题OriginalInterfaceOriginalInterfaceProxyClassProxyClass

  1. 当我输入我的类的强制转换对象时ProxyClass,OriginalClass这是有效的,但Java是如何允许的?在实例的情况下相同?
  2. 据我所知,Java仅使用方法创建代理类,但是当我尝试访问此对象的属性时会发生什么?
  3. 只有接口方法在代理中实现,但是当我尝试访问不在接口中且仅在类中提到的方法时会发生什么?

谢谢,学生

java proxy dynamic-proxy

8
推荐指数
2
解决办法
6773
查看次数

我的应用程序不断运行Full GC!

我是性能调优应用程序的新手,并且搞清楚GC的工作原理,所以可能在第一百万次问同样的问题!

问题是2到3周前,某种程度上我的Web应用程序时不时地崩溃了.查看日志,推断出由于OOM错误导致崩溃:

Caused by: java.sql.SQLException: java.lang.OutOfMemoryError: Java heap space
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:430)
    ...
Run Code Online (Sandbox Code Playgroud)

14:29:58,469 ERROR [[dispatcher]] Servlet.service() for servlet dispatcher threw exception
java.lang.OutOfMemoryError: GC overhead limit exceeded
    at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:193)
    at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:76)
    at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:35)
    at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:969)
    at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)
    at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
    at com.tennisearth.dao.hibernate.HibernateCommentaryDao.getCommentary(HibernateCommentaryDao.java:52)
    at com.tennisearth.service.impl.CommentaryServiceImpl.getCommentary(CommentaryServiceImpl.java:454)
    at com.tennisearth.service.impl.CommentaryServiceImpl.getCommentaryMap(CommentaryServiceImpl.java:165)
    at com.tennisearth.web.controllers.WidgetsController.commentaryList(WidgetsController.java:704)
    at com.tennisearth.web.controllers.WidgetsController.widgets(WidgetsController.java:290)
    at sun.reflect.GeneratedMethodAccessor259.invoke(Unknown Source)
            ...
Run Code Online (Sandbox Code Playgroud)

随后,我开始记录GC日志,发现最初在服务器启动时,GC正常运行:

3.808: [GC 56505K->5808K(251264K), 0.0120840 secs]
3.820: [Full GC 5808K->5614K(251264K), 0.0540460 secs]
7.169: [GC 71214K->9589K(251264K), 0.0068780 secs]
8.173: [GC 75189K->13543K(251264K), 0.0174120 …
Run Code Online (Sandbox Code Playgroud)

java jboss garbage-collection

8
推荐指数
1
解决办法
4829
查看次数

编译gdb以进行远程调试

我正在尝试远程调试在arm9上运行的应用程序

到目前为止,我已经能够在我的设备上交叉编译和执行gdbserver.

  1. 获取gdb(7.2)源并提取它们
  2. ./configure --target = arm-none-linux-gnueabi --with-expat =/usr/local/lib /
  3. 使
  4. cd gdb/gdbserver
  5. ./configure --host = arm-none-linux-gnueabi
  6. 使
  7. tftp gdbserver到我的设备
  8. 运行并通过gdb连接到设备

gdbserver"似乎"正确启动并将自己附加到我的helloworld应用程序

当我尝试gdb到远程服务器时,我得到
"警告:无法解析XML目标描述;在编译时禁用了XML支持"

显然,汇编没有考虑到外籍人士.我真的不确定如何指定配置脚本的expat库路径.

debugging gnu remote-debugging compilation configure

8
推荐指数
2
解决办法
2万
查看次数

本地内部阶级

我已阅读内部课程教程并且不了解一件事.据说内部类隐藏了对外类的引用,所以我通过这个普通类提出了几个问题:

public class OuterClass {

public void doSomething() {
    JButton button = new JButton();
    button.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {                
      }
    });
  }
}
Run Code Online (Sandbox Code Playgroud)

所以我们有一个本地内部类,它位于方法内部doSomething(),我有一些问题.

  1. 这个本地内部类是否持有对OuterClass的引用,因为它是本地的?

  2. 在方法doSomething()终止后,此本地内部类是否保留内存?

  3. 是否有任何OuterClass符合GC条件的情况,但本地内部类仍然被其他类引用?会发生什么?

java garbage-collection inner-classes

8
推荐指数
1
解决办法
370
查看次数

为什么大型网站使用"不良做法"?

我经常看到文章,帖子和评论:

  • 全局变量在javascript中很糟糕
  • 脚本标签应位于页面底部
  • CSS应该在外部文件中并位于页面顶部
  • 脚本应该在外部文件中,而不是普通的脚本标签.
  • 等等

我查了一些大网站的HTML源代码,并注意到他们在HTML标记中有很多简单的javascript和CSS.JavaScript和HTML总是被混淆,等等.

html javascript css

8
推荐指数
3
解决办法
355
查看次数

java.io.InvalidClassException:

InvalidClassException: local class incompatible: stream classdesc serialVersionUID = -196410440475012755, local class serialVersionUID = -6675950253085108747

我在以下场景中使用InvalidClassException进行结构化.在这里,我的EAR安装在4个Websphere App服务器中,并在此之间共享执行.有时我从POJO类得到异常InvalidClassException,它实现了Serializable接口.请对此有任何线索.我对此没有任何线索.

java serialization

8
推荐指数
2
解决办法
4万
查看次数