小编Wil*_*iam的帖子

哪个会使Class文件更大?import java.awt.*,还是一堆或单个import语句?

好的,如果我有一个项目使用:

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Color;
import java.awt.Polygon;
Run Code Online (Sandbox Code Playgroud)

它会使Class文件更小:

import java.awt.*
Run Code Online (Sandbox Code Playgroud)

我反对它,因为我输入了许多我不需要的东西.我正在考虑因为它使文件中的字符少得多.

java size import class

5
推荐指数
2
解决办法
2566
查看次数

您更喜欢哪种:Java Web Start或Java Applets?

作为程序员和最终用户,您认为哪个更好?为什么?

java applet java-web-start

5
推荐指数
1
解决办法
617
查看次数

文件未找到.为什么不?

好的,我正在尝试使用以下代码加载Java文件:

String file = "map.mp";
URL url = this.getClass().getResource(file);
System.out.println("url = " + url);
FileInputStream x = new FileInputStream("" + url);
Run Code Online (Sandbox Code Playgroud)

尽管在同一个文件夹中的类文件是它说,它不能找到它(是的,这在充分代码try catch块).

但是,它找到另一个使用不同名称的相同代码的文件:

URL url = this.getClass().getResource("default.png");
System.out.println("url2 = " + this.getClass().getResource("default.png"));
BufferedImage img = ImageIO.read(url);
Run Code Online (Sandbox Code Playgroud)

为什么我的代码找不到我的map.mp文件?

java io file-io file

4
推荐指数
1
解决办法
4875
查看次数

为什么我的JMenuBar不会出现?

我正在尝试在java中创建一个GUI,但是JMenuBar给了我两天的艰难时间.有人可以告诉我为什么它没有出现?

import java.awt.*;
import javax.swing.*;
import javax.swing.JPanel;
import java.awt.event.*;
import java.awt.image.*;     
import java.io.*;
import java.util.Arrays;
import javax.imageio.ImageIO;

public class selectionFrame extends JFrame
 {
  Font name;
  Font title;

  public void setup() //can't use constructer because this isn't given a size until after it is constructed.
  { 
   //getContentPane().add(menuBar);
   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   getContentPane().setLayout(new FlowLayout());
   //getContentPane().add(j);

   setJMenuBar(createMenuBar());
   //getContentPane().add(createMenuBar());  
  }

  public JMenuBar createMenuBar()
  {
   JMenuBar menuBar;
   JMenu m_file;
   JMenuItem mi_save;
   JMenuItem mi_load;

   JMenu m_edit;
   JMenuItem mi_tileHeight;
   JMenuItem mi_tileWidth;

   menuBar = new JMenuBar();
   m_file = new JMenu("File");
   m_edit …
Run Code Online (Sandbox Code Playgroud)

java user-interface swing

3
推荐指数
1
解决办法
5420
查看次数

为什么我的网站不会使用Tahoma字体?

我在style.css中设置了我的字体:

font-family: "Arial, Verdana, sans-serif";
Run Code Online (Sandbox Code Playgroud)

但我的网站似乎仍然使用无衬线字体.这里有什么问题?

css fonts

3
推荐指数
1
解决办法
4393
查看次数

问题覆盖虚函数

好吧,我正在编写一个游戏,其中包含一个pairent类(敌人)的向量,它将被子类(goomba,koopa,boss1)填充,我需要在调用update时调用子类.各自的更新.我设法创建了一个问题的例子.

#include <stdio.h>
class A{
    public:
        virtual void print(){printf("Hello from A");}
};

class B : public A{
    public:
        void print(){printf("Hello from B");}
};


int main(){
    A ab = B();
    ab.print();
    while(true){}
}
Run Code Online (Sandbox Code Playgroud)

输出需要:"你好B"输出得到:"你好A"

如何让它调用B的打印功能?

c++ polymorphism inheritance

3
推荐指数
1
解决办法
262
查看次数

矢量插入崩溃程序

有谁能告诉我

为什么这会导致我的程序崩溃?假设它使得它使t矢量中的所有元素都位于(y + height).

编辑:在其中带有"插入"的行上崩溃.

void createDrawOrder(vector<Thing*> t, vector<int> *order) {
        int min = t[0]->y + t[0]->height;
        int max = t[0]->y + t[0]->height;

        vector<int>::iterator it;

        it = order->begin();

        order->push_back(0);

        for (int i = 1; i < (int) t.size(); i++) {
            if ((t[i]->y  + t[i]->height) < min) {
                min = (t[i]->y  + t[i]->height);
                order->insert(it, i);
            }

            else if((t[i]->y + t[i]->height) >= min && (t[i]->y + t[i]->height) < max){

                int tempsize = (int) order->size();

                for (int j = 0; j < tempsize; …
Run Code Online (Sandbox Code Playgroud)

c++ crash sdl vector

3
推荐指数
1
解决办法
975
查看次数

如何测试一个矩形是否在另一个矩形中?

好吧,所以我正在开发一款游戏,我发现我的敌人不喜欢我的碰撞检测,这对我的玩家来说非常有效.经过一些调试我发现它是因为我的敌人比我的瓷砖大,而我的玩家比我的瓷砖小.

现在我需要能够成为大敌和老板,所以这不会做.所以我需要找出一种更好的方法来测试碰撞检测.这就是我目前的做法:

上和下:

if((enemy.left > tile.left && enemy.left < tile.right || enemy.right > tile.left && enemy.right < tile.right) && enemy.top < tile.bottom && enemy.bottom > tile.top){
    //collision
}
Run Code Online (Sandbox Code Playgroud)

左和右:

if((enemy.top > tile.top && enemy.top < tile.bottom || enemy.bottom > tile.top && enemy.bottom < tile.bottom) && enemy.left < tile.right && enemy.right > tile.left){
     //colision
}
Run Code Online (Sandbox Code Playgroud)

c# c++ java collision-detection

3
推荐指数
1
解决办法
582
查看次数

'添加'两个角度

好吧,所以我有两个角度.一个是操纵杆的角度,另一个是相机与玩家的角度.相机的角度.现在我想要它,所以当我按下操纵杆时,它会让玩家远离相机.我该怎么做?在Java或Ardor3d中有一种简单的方法吗?

编辑:这是我如何得到我的角度的代码.

float camDegree = (float) Math.toDegrees(Math.atan2(
                     _canvas.getCanvasRenderer().getCamera().getLocation().getXf() - colladaNode.getTranslation().getXf(),
                     _canvas.getCanvasRenderer().getCamera().getLocation().getYf()) - colladaNode.getTranslation().getYf());

            player.angle = (float) Math.toDegrees(Math.atan2(padX, padY));
            Quaternion camQ = new Quaternion().fromAngleAxis(camDegree, Vector3.UNIT_Y);
Run Code Online (Sandbox Code Playgroud)

java geometry ardor3d

3
推荐指数
1
解决办法
698
查看次数

如何获取jar文件中的文件夹路径?

好的,所以在IDE中它运行得很好并且说该文件存在,但是一旦我将它打包到一个jar中这个代码:

File levelFolder = new File(getClass().getResource("data/level").getPath()); 
System.out.println("exists = " + levelFolder.exists());
Run Code Online (Sandbox Code Playgroud)

说该文件夹不存在.任何想法为什么?

编辑:

jar文件列表.

G:\java>jar tvf phantasyblade.jar
  6574 Wed Nov 10 22:36:34 PST 2010 META-INF/MANIFEST.MF
  6334 Wed Nov 10 22:36:34 PST 2010 META-INF/CYPRI.SF
   992 Wed Nov 10 22:36:34 PST 2010 META-INF/CYPRI.RSA
     0 Wed Nov 10 22:31:32 PST 2010 META-INF/
   717 Mon Nov 08 00:08:30 PST 2010 Switch.class
   935 Wed Nov 10 22:21:14 PST 2010 Sword1.class
   803 Tue Nov 09 13:42:38 PST 2010 SwordBlock.class
  2674 Tue Nov 09 13:42:38 PST 2010 …
Run Code Online (Sandbox Code Playgroud)

java file-io jar file

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