小编use*_*421的帖子

无法覆盖超类的方法

这样做时,我收到此错误:

The return type is incompatible with MouseAdapter.mouseClicked(MouseEvent)
Run Code Online (Sandbox Code Playgroud)

类:

public class MyMouseAdapter extends MouseAdapter
{
    public MyMouseAdapter()
    {
        // TODO Auto-generated constructor stub
    }

    @Override
    public String mouseClicked(MouseEvent e)
    {
        // TODO Auto-generated method stub

    }
}
Run Code Online (Sandbox Code Playgroud)

哪里错了?原来的方法是public void mouseClicked(MouseEvent e)

java swing

0
推荐指数
1
解决办法
293
查看次数

线x =!y是什么意思

这是代码的一部分

int main()
{
    int x=5,y=10;
    if(x=!y)
    {
        cout<<"h";
    }
    else
    {
        cout<<"p";
    }
    getch();
}
Run Code Online (Sandbox Code Playgroud)

输出是p,请解释,代码如何工作和意义x=!y.

c++

0
推荐指数
2
解决办法
569
查看次数

使用8位将负十进制转换为二进制

(不确定是否允许我提出这样的问题,但如果被问到会删除)使用 8 位和 2 的补码格式将 -25 转换为二进制表示以表示负数。到目前为止,我得到了 11001。

我尝试使用 google 方法,但我不确定如何使用 8 位方式进行操作。

这个问题不是使用代码,只是转换,但我所做的是将其转换为二进制 11001 然后我添加了 3 个零使其成为 8 位(假设这是正确的) 00011001 然后我做了 1 的补码 11100110 和 2 的补码通过加 1等于 11100111。

我不确定这是否正确。

binary

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

可以使用 webmail 但不能通过 javax.mail 发送

我目前有一个邮件服务器正在运行。我可以通过 mywebsite.com/roundcube/ 登录我的网络邮件客户端

网络邮件允许我适当地发送和接收电子邮件。日志显示所有进出的邮件都很好。我已经从这里发送到我的 gmail 帐户并返回。

但是,我真正想做的是使用 javax 邮件从 java 发送一些邮件。所以我可以自动化电子邮件

我试过如下配置:

    final String username = "myusername";
    final String password = "mypassword";

Properties props = new Properties();
        props.put("mail.smtp.host", "localhost");
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.port", "25");
        props.put("mail.debug","true");

        // Get the Session object.
        Session session = Session.getInstance(props,
                new javax.mail.Authenticator() {
                    protected PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication(username, password);
                    }
                });
        session.setDebug(true);
Run Code Online (Sandbox Code Playgroud)

当我去发送消息时

Transport.send(message);
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

DEBUG: JavaMail version 1.5.0-b01
DEBUG: setDebug: JavaMail version 1.5.0-b01
DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]
DEBUG SMTP: useEhlo true, useAuth true
DEBUG …
Run Code Online (Sandbox Code Playgroud)

java jakarta-mail

0
推荐指数
1
解决办法
953
查看次数

通过TCP/IP套接字(Web服务器)发送文件

我正在编写Web服务器的准系统,但我无法弄清楚为什么我的文件不能通过我的套接字发送,我正在连接到它以及它只是不在send()我的文件中...我是什么?失踪?

// CODE(server.c)

#include<netinet/in.h>    
#include<stdio.h>    
#include<stdlib.h>    
#include<sys/socket.h>    
#include<sys/stat.h>    
#include<sys/types.h>    
#include<unistd.h>    

int main(void) {    
   int create_socket, new_socket;    
   socklen_t addrlen;    
   int bufsize = 1024;    
   char *buffer = malloc(bufsize);    
   struct sockaddr_in address;    

   if ((create_socket = socket(AF_INET, SOCK_STREAM, 0)) > 0){    
      printf("The socket was created\n");
   }

   address.sin_family = AF_INET;    
   address.sin_addr.s_addr = INADDR_ANY;    
   address.sin_port = htons(80);    

   if (bind(create_socket, (struct sockaddr *) &address, sizeof(address)) == 0){    
      printf("Binding Socket\n");
   }

    long fsize;
    FILE *fp = fopen("index.html", "r");
    fseek(fp, 0, SEEK_END);
    fsize = ftell(fp);
    rewind(fp); …
Run Code Online (Sandbox Code Playgroud)

c sockets http

0
推荐指数
1
解决办法
5774
查看次数

Java Socket 卡在 new ObjectInputStream()

我有一个游戏的服务器/客户端模型,但它一直卡在ObjectInputStream初始化中。

下面是客户端启动方法的代码:

public void start(){
try {
        Socket s = new Socket("127.0.0.1", 24680);
        Thread.sleep(1000);
        ois = new ObjectInputStream(s.getInputStream()); // stuck here
        oos = new ObjectOutputStream(s.getOutputStream());
        startGame();
    } catch (Exception e) {
        e.printStackTrace();
    }
}
}
Run Code Online (Sandbox Code Playgroud)

这是服务器代码:

try {
    InputStream fis = socket.getInputStream();
    ObjectInputStream ois = new ObjectInputStream(fis);
    while (true) {
        ArrayList < Dot > lists = (ArrayList < Dot > ) ois.readObject();
        for (Socket s: sockets) {
            ObjectOutputStream oos = new ObjectOutputStream(s.getOutputStream());
            oos.writeObject(lists);
        }
    }
} catch (Exception …
Run Code Online (Sandbox Code Playgroud)

java sockets serialization

0
推荐指数
1
解决办法
3138
查看次数

为什么Comparator <Integer []>抛出异常?

我有一个例外

java.lang.IllegalArgumentException: Comparison method violates its general contract!
at java.util.TimSort.mergeHi(TimSort.java:868)
at java.util.TimSort.mergeAt(TimSort.java:485)
at java.util.TimSort.mergeCollapse(TimSort.java:408)
at java.util.TimSort.sort(TimSort.java:214)
at java.util.TimSort.sort(TimSort.java:173)
at java.util.Arrays.sort(Arrays.java:659)
at Main.main(Main.java:64)
Run Code Online (Sandbox Code Playgroud)

使用此代码时:

Arrays.sort(arr, new Comparator<Integer[]>(){  //arr is 2D array
        public int compare(Integer[] o1, Integer[] o2){
            return o1[2]==o2[2]?0:o1[2]>o2[2]?1:-1;
        }
    });
Run Code Online (Sandbox Code Playgroud)

我认为这与不满足比较的传递性有关,但当我做了一点这样的改变时:

Arrays.sort(arr, new Comparator<Integer[]>(){  //arr is 2D array
        public int compare(Integer[] o1, Integer[] o2){
            return o1[2].compareTo(o2[2]); // here is the change
        }
    });
Run Code Online (Sandbox Code Playgroud)

不再生成异常.我无法理解这个问题的解释,因为我确信除了compareTo()方法之外,还可以使用关系运算符(>,<,=)来比较Integer实例

Integer x = 1;
Integer y = 2;
System.out.println(x<y);
Run Code Online (Sandbox Code Playgroud)

按预期打印true

任何机构都可以澄清吗?

java comparator

0
推荐指数
1
解决办法
187
查看次数

如果派生类不能重写/更改静态方法的定义,为什么以及何时需要在派生类中重新声明静态方法?

我对static关键字及其用法很熟悉。我知道static可以在子类中重新声明方法,但是方法的定义被隐藏,并且与父类相同。我提到的是我已经阅读的文章的一些链接:

https://www.geeksforgeeks.org/can-we-overload-or-override-static-methods-in-java/

Java为什么不允许覆盖静态方法?

静态和最终之间的区别?

当派生类定义的静态方法与基类中的静态方法具有相同的签名时,派生类中的方法会将方法隐藏在基类中。但是仍然将基类的方法称为display()基类的方法。

但是我很好奇为什么为什么以及何时需要重新声明派生类中的static 方法,base class如果它的定义不能在派生类中被覆盖/更改,而是显示基类的定义呢?

    /* Java program to show that if static method is redefined by 
a derived class, then it is not overriding. */

// Superclass 
class Base { 

    // Static method in base class which will be hidden in subclass 
    public static void display() { 
        System.out.println("Static or class method from Base"); 
    } 

    // Non-static method which will be overridden in derived class 
    public void print() …
Run Code Online (Sandbox Code Playgroud)

java static

0
推荐指数
1
解决办法
64
查看次数

Java中通过Socket发送HTTP/2请求


我需要通过 TCP 套接字从我的 Java 类发送 HTTP/2 请求。我已经适配了一段适用于普通 HTTP/1.1 的代码。但是,使用 HTTP/2 时,它不会输出任何响应或错误代码。

你能看出其中有什么问题吗?我试图访问的服务器位于https://localhost:8443

Socket s = new Socket(InetAddress.getByName("localhost"), 8443);
PrintWriter pw = new PrintWriter(s.getOutputStream());
pw.print("GET / HTTP/2.0\r\n");
pw.print("Host: localhost:8443\r\n\r\n");
pw.flush();
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
String t;
while((t = br.readLine()) != null) System.out.println(t);
br.close();
Run Code Online (Sandbox Code Playgroud)

谢谢!

java http2

0
推荐指数
1
解决办法
1658
查看次数

如何从 .jks 获取 .crt 文件

我需要配置我的网站 SSL。我有以下文件:file.csr 和 file.jks

我需要以下文件来启用我的网站的 SSL:file.crt、file.key 和 keystore

我通过互联网进行了搜索,但没有找到任何帮助。谁能告诉我如何使用我已有的文件获取这些文件?

我尝试了多种转换选项,但没有任何效果。

<Connector port="8442" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
keystoreFile="/conf/keys/server/keystore"
               keystorePass="CHANGEME"/>
Run Code Online (Sandbox Code Playgroud)

java https tomcat jks ssl-certificate

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