小编MyG*_*GaN的帖子

为什么我不能创建泛型类型的内部类的数组?

以下代码给出了"通用数组创建"错误.

public class TestClass<K, V> {
    Entry[] entry;

    private TestClass() {
        entry = new Entry[10]; // <--- this line gives generic array creation error
    }

    private class Entry {
        public Entry() {

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想知道为什么会这样,因为类Entry不是泛型类,并且没有泛型类型的对象.

是因为内部类仍然可以访问泛型类型,即使它不使用任何类型?这是我能想到的最好的,但如果是这样的话,我不明白为什么Java看起来不会看到它不使用泛型类型,因此不是泛型类?

是的,我看过许多关于泛型类型数组的线程,但是没有,我没有找到一个关于内部类的线程.

java arrays generics

6
推荐指数
2
解决办法
693
查看次数

System.ArgumentNullException:值不能为空,参数名称: implementationInstance

我在 IIS 中部署了 .NET core mvc 应用程序,当我运行应用程序时,页面显示 502.5 错误,我在 powershell "dotnet D:\deploy\WebApp\WebApp.dll" 中运行命令,下面显示详细的错误内容:

注意: .net 核心版本 2.0.0

未处理的异常:System.ArgumentNullException:值不能为空。

参数名称: implementationInstance

在 Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions
.AddSingleton[TService](IServiceCollection services, TService implementationInstance)

我知道错误是如何发生的,如何实例化?

public class Startup
{   ...
    public void ConfigureServices(IServiceCollection services)
    {
        ...
        services.AddSingleton(CreateQuery());  // this is error location
        ...
    }

    IQuery CreateQuery()
    {
        IQuery query = null;
        var dataBase = Configuration.GetSection("AppSettings")["DataBase"];
        var defaultConnection = Configuration.GetSection("ConnectionStrings")["SqlServer"];
        switch (dataBase)
        {
            case "sqlserver":
                query = new WebApp.Query.Query(defaultConnection);
                break;
        }
        return query;
    }
}
Run Code Online (Sandbox Code Playgroud)

c# iis asp.net-core

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

Perl TCP Server处理多个客户端连接

我将在前言中说我对Perl和Socket编程的经验都很少,所以我感谢我能得到的任何帮助.我有一个TCP服务器,它需要同时处理多个客户端连接,并且能够随时从任何一个客户端接收数据,并且能够根据收到的信息将数据发送回客户端.例如,Client1和Client2连接到我的服务器.Client2发送"Ready",服务器将其解释并向Client1发送"Go".以下是我到目前为止所写的内容:

my $sock = new IO::Socket::INET 
{
    LocalHost => $host, // defined earlier in code
    LocalPort => $port, // defined earlier in code
    Proto => 'tcp',
    Listen => SOMAXCONN,
    Reuse => 1,
};
die "Could not create socket $!\n" unless $sock;

while ( my ($new_sock,$c_addr) = $sock->accept() ) {
    my ($client_port, $c_ip) = sockaddr_in($c_addr);
    my $client_ipnum = inet_ntoa($c_ip);
    my $client_host = "";

    my @threads;

    print "got a connection from $client_host", "[$client_ipnum]\n";
    my $command;
    my $data;

    while ($data = <$new_sock>) { …
Run Code Online (Sandbox Code Playgroud)

perl multithreading tcp

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

如何在SQLPlus Oracle select中指定tablespace_name

我的设置看起来像这样

SQL> SELECT tablespace_name, table_name
     FROM all_tables
     WHERE tablespace_name = 'MYSPACE';

TABLESPACE_NAME            TABLE_NAME
-------------------------- ------------------------------
MYSPACE                    MYTABLENAME
MYSPACE                    MYOTHERTABLENAME
Run Code Online (Sandbox Code Playgroud)

现在我想,SELECT * FROM MYSPACE.MYTABLENAME;但显然不是你怎么做的.

ERROR at line 1:
ORA-00942: table or view does not exist
Run Code Online (Sandbox Code Playgroud)

我的预期结果是从该表中获取所有记录.就像我想的那样是MySQL.

谢谢

oracle sqlplus

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

如何格式化perl中的SQL语句(代码样式)

我想取悦perlcritic并在我的代码中轻松阅读SQL查询.目前我是这样做的:

if (defined $dbh) {
    $sth = $dbh->prepare(<<'SQL'
SELECT firstname, lastname, email, country
FROM Person
JOIN Country ON Person.countryID = Country.ID
WHERE age = ?
  AND sex = ?
LIMIT 100
SQL
    );
}
Run Code Online (Sandbox Code Playgroud)

如果上下文缩进,则该语句不会缩进所有女巫使其弹出.我发现这很好,因为它可以很容易地发现stmt,它们被分成几行,使它们易于阅读.

但是,如果上下文没有缩进,这看起来很麻烦.如果可能的话,我不想在我的stmt中引入换行符或不必要的空格.也是SQL在stmt结束时,悬挂);也不好.

请提出一个关于我可以采用的这个问题的好的风格指南.

perl coding-style

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

使用反射返回所有对象属性(包括私有)

我在stackoverflow以及包括MS文档在内的其他网站上查找了这个,并尝试了我遇到的所有可能的答案,但无济于事.不确定,我做错了什么.简单的类,试图获得所有属性,包括私有属性.

该解决方案是vs2017 15.5.7,c#2017,netFramework 4.7.02中的控制台应用程序

尝试了所有绑定标志组合:

 (BindingFlags.NonPublic|BindingFlags.Instance|BindingFlags.Static)
 (BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static |
 BindingFlags.Instance | BindingFlags.DeclaredOnly)
Run Code Online (Sandbox Code Playgroud)

包括代码:

var listnew = new List<Test>
{
    new Test {Name = "Test"}
};

foreach (var item in listnew)
{
    var test = item.GetType().GetProperties(BindingFlags.NonPublic|BindingFlags.Instance|BindingFlags.Static);

    foreach (var prop in test)
    {
        System.Console.WriteLine(prop);
        System.Console.WriteLine(prop.GetValue(item));
    }
}
Run Code Online (Sandbox Code Playgroud)

这是班级:

public class Test
{
    private string _name;

    public string Name
    { 
        get => _name;
        set => _name = value;
    }
}
Run Code Online (Sandbox Code Playgroud)

c#

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

标签 统计

c# ×2

perl ×2

arrays ×1

asp.net-core ×1

coding-style ×1

generics ×1

iis ×1

java ×1

multithreading ×1

oracle ×1

sqlplus ×1

tcp ×1