相关疑难解决方法(0)

什么是公共构造函数在C#中的抽象类中的实用性?

如果抽象类中的公共构造函数只能由其派生类调用,那么它应该在功能上等同于受保护的构造函数.对?

在抽象类中声明公共构造函数而不是受保护构造函数有什么区别吗?你会用它做什么用的?为什么编译器没有投诉?

c# constructor abstract-class

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

抽象类的对象和抽象类的对象列表之间有什么区别?

我们不能创建抽象类的对象,但我们可以创建List或它们的数组.有什么不同?

.net c#

12
推荐指数
3
解决办法
682
查看次数

在 swift 中,为什么我不能实例化具有初始化程序的协议?

我知道通常我无法实例化协议。但是如果我在协议中包含一个初始化程序,那么编译器肯定知道当协议稍后被结构或类使用时,它会有一个可以使用的 init 吗?我的代码如下所示:

protocol Solution {
  var answer: String { get }
}

protocol Problem {
  var pose: String { get }
}

protocol SolvableProblem: Problem {
  func solve() -> Solution?
}

protocol ProblemGenerator {
  func next() -> SolvableProblem
}

protocol Puzzle {
  var problem: Problem { get }
  var solution: Solution { get }

  init(problem: Problem, solution: Solution)
}

protocol PuzzleGenerator {
  func next() -> Puzzle
}

protocol FindBySolvePuzzleGenerator: PuzzleGenerator {
  var problemGenerator: ProblemGenerator { get }
}

extension …
Run Code Online (Sandbox Code Playgroud)

protocols instantiation swift

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

抽象类和匿名类

abstract class Two {
    Two() {
        System.out.println("Two()");
    }
    Two(String s) {
        System.out.println("Two(String");
    }
    abstract int  display();
}
class One {
    public Two two(String s) {
        return new Two() {          
            public int display() {
                System.out.println("display()");
                return 1;
            }
        };
    }
}
class Ajay {
    public static void main(String ...strings ){
        One one=new One();
        Two two=one.two("ajay");
        System.out.println(two.display());
    }
}
Run Code Online (Sandbox Code Playgroud)

我们无法实例化一个抽象类,那么为什么函数 二二(String s)能够创建一个抽象类的实例Two ????

java abstract anonymous-class

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