标签: instance

Android - 如何从实例启动新活动

我是Android开发的新手.
我要开始一个新的活动.通常,我会写下面的代码:

Intent i = new Intent(Activity1.this, Activity2.class);
Activity1.this.startActivity(i);
Run Code Online (Sandbox Code Playgroud)

但现在我需要从该活动的实例开始一个新活动(因为我不想启动该类型的泛型活动,我需要调用他的构造函数来定义他的属性).像这样的东西:

Activity2 instance = new Activity2(parameters);
Intent i = new Intent(Activity1.this, instance);
Activity1.this.startActivity(i);
Run Code Online (Sandbox Code Playgroud)

可能吗?

android instance android-intent android-activity

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

在Java对象中替换自己的实例

就我而言,实现者应该能够“更新”一个对象。

//creating an instance (follows the active record pattern)
    SameClass myObject = SameClass.find(123,params); 

//myObject gets replaced by the output of the web api inside, but it feels like an update for the implementator
    myObject.update("ask the web api to paint it black"); 
Run Code Online (Sandbox Code Playgroud)

但是,在类内部,我还没有弄清楚如何立即替换所有属性。这种方法行不通,但是也许还有其他机会可以解决它:

    public void update(String newParams) {
//Can't replace "this" (that call returns an instance of "SameClass")
       this = ConnectionFramework.getForObject(SameClass.class,"some url",newParams); 
    }
Run Code Online (Sandbox Code Playgroud)

实际上,“ ConnectionFramework”是适用于Android的Spring RestTemplate。未简化的版本是:

    public void update(HashMap<String,String> params) {
SameClassResponse response = restTemplate.getForObject(ENDPOINT+"/{id}.json",SameClassResponse.class, params);
    this = response.getSameClass(); …
Run Code Online (Sandbox Code Playgroud)

java instance-variables instance

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

Perl,perl构造函数中的@array

我写了perl类,但我不知道如何在我的$this变量中有一个数组或一个哈希?

我有一个pack.pm:

#!/usr/bin/perl -w
use strict;
use Parallel::ForkManager;
package Pack;

our $cgi = new CGI;

sub new {
    my ($classe, $nom, $nbports, $gio) = @_;

    my $this = {
    "nom"    => $nom,
    "nbports" => $nbports,
    "gio"   => $gio
    };

    bless($this, $classe);
    return $this;   
}
    ...
1;
Run Code Online (Sandbox Code Playgroud)

我想有一个@tab,我可以通过访问$this->tab,但我不想在arg中给它实例.
它在Perl中如何工作?

谢谢.

variables perl constructor instance

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

什么应该是PHP中的类的实例?

在PHP 5.2.x中,mySQL 5.x

我有一个问题包围我应该和不应该是PHP中的一个类的实例,因为它们在呈现页面后不是持久的.

说我有一个评论列表.对我来说,每个评论都是它自己的对象是有道理的,因为我可以对它们调用动作,并且它们拥有属性.如果我用另一种语言(一种具有持久状态且可以与之交互的语言)这样做,我会这样做.

但这似乎很浪费,因为要做到这一点,我有一个调用new()的循环,这可能意味着我需要为每个实例访问数据库(也很糟糕).

但也许我错过了一些东西.

Php在我对类和对象的看法上似乎有所不同.什么时候应该是一个类实例,什么时候不是?

php oop class instance

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

如何使用Visitor模式替换"instanceof"

我对访问者模式有点不友好,但我有一个需要访问者实现的任务(如果我想避免"instanceof"检查).

我有一个类,它是几个gwt元素的包装:Label,Panel,Widget(可以是复选框,列表框,文本框等).我使用数组作为UI的相似部分的集合.例如Label +复选框,Label +文本框; 标签+按钮等

一些元素以不同的方式构造(从例如Panel派生的另一个类的一部分).因此,我有两个相同的构造函数,但在一个地方使用重载方法.我可以合并这些构造函数并使用上面提到的方法中的"instanceof"检查元素.但我不喜欢这个解决方案,并希望使用访问者模式替换它.说实话,我不知道该怎么做,希望对你有所帮助.

这是我的一个例子:

public class MyWidgets {
    private String stringLabel;
    private Widget widget;
    private Panel panel;

    public MyWidgets(String stringLabel, Widget widget) {
      this.stringLabel = stringLabel;
      this.widget = widget;

      initPanel(stringLabel, widget);
    }

    public MyWidgets(ConstructedClass cs, Widget widget) {
       this.widget = widget;

       initPanel(cs, widget);
    }

    private initPanel(String label, Widget widget) {
      panel = SomeStaticUtilityClass.initPanel(new Label(label), widget);
    }

    private initPanel(ConstructedClass cs, Widget widget) {
      panel = SomeStaticUtilityClass(cs, widget);
    }
}
Run Code Online (Sandbox Code Playgroud)

像这样的东西(我试图让它最大化抽象,实际上它更难).

所以我有一个使用"instanceof"的解决方案:

private initPanel(Object object, Widget widget) {
  if(object …
Run Code Online (Sandbox Code Playgroud)

java polymorphism gwt instance

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

JavaFX2 FXML如何动态添加元素(例如Buttons)

所以,我想要做的是,使用fxml创建一个自定义元素,然后将该元素的几个实例添加到容器中,如GridPane."new"运算符对我不起作用,因为我想使用@fxml注释器来访问该元素.克隆会很好,但它不起作用.当在for()contruct中使用添加许多元素时,FXMLLoader非常慢.如果我可以写一个fxml parentnode的引用,它可以从控制器调用,那将是完美的.

对不起...这里伪...

public class Controller implements Initializable {

    @FXML
    private VBox stack;

    @FXML
    private Button button;

    @FXML
    private void Change(KeyEvent event) throws IOException {     
        for (int i=0; i<10; i++){
            stack.getChildren().add(button);   
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

将THE按钮添加到VBox是没有问题的.但是在for-contruct中(添加多于一个按钮)它失败了.我可以在for构造中使用new运算符,但我想知道,如果这是唯一的可能性.我认为必须有另一种方式,例如使用@FXML注释器"获取"按钮然后复制它.

instance building javafx-2 fxml

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

如何从Java中的另一个类获取类的特定实例?

我已经使用该main方法创建了以下类,该方法创建了新的实例Application和实例ApplicationModel,ApplicationView并ApplicationController为此特定Application.

public class Application
{

    // Variables

    private ApplicationSettings         settings;
    private ApplicationModel            model;
    private ApplicationView             view;
    private ApplicationController       controller;

    // Constructor

    public Application()
    {
        settings        = new ApplicationSettings();
        model           = new ApplicationModel();
        view            = new ApplicationView(model);
        controller      = new ApplicationController();
    }

    // Main method

    public static void main(String[] args)
    {
        Application application = new Application();
    }

    // Getters for settings, model, view, controller for instance of Application

} …
Run Code Online (Sandbox Code Playgroud)

java oop model-view-controller class instance

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

类#isInstance vs Class#isAssignableFrom

鉴于a Class<?> superType和a Object subInstance,它们之间有什么区别

superType.isInstance(subInstance)
Run Code Online (Sandbox Code Playgroud)

和

superType.isAssignableFrom(subInstance.getClass())
Run Code Online (Sandbox Code Playgroud)

(如果有的话)?

java class instance

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

ColdFusion 10的多实例问题:"错误的网关错误"

我在我的ColdFusion开发人员版本上创建了一个多实例设置.我在Maverics上运行.我对这个过程的指南是Rob Brooks-Bilson的这篇文章.

我做的一切都很对.但是,当我尝试ping ColdFusion Administrator时,我收到"Bad Gateway Error".

coldfusion gateway instance

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

Python 3中的类实例化比Python 2慢

我偶然注意到,在Python 2.7和3.5中,从大型数据文件生成类的简单程序运行速度要快得多.我在这里读到,使用"无限精度"整数归咎于简单枚举的减速,但即使我尝试实例化这个类的简单测试,我发现Python 3明显变慢:

class Benchmark(object):
    def __init__(self):
        self.members = ['a', 'b', 'c', 'd']


def test():
    test = Benchmark()

if __name__ == '__main__':
    import timeit
    print(timeit.timeit("test()", setup="from __main__ import test"))
Run Code Online (Sandbox Code Playgroud)

我想也许这与每个类实例的大小有关,但Python 3实例小于2(56对64)

$python3 benchmarks.py
0.7017288669958361
$python benchmarks.py
0.508942842484
Run Code Online (Sandbox Code Playgroud)

我已尝试过很多关于这个主题的变体,包括在不同的机器上使用3.4,并且仍然得到相同的结果.有什么想法发生了什么?

python class instance python-3.x

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