Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 创建接口对象并指定该对象静态方法?_Java_Object_Interface - Fatal编程技术网

Java 创建接口对象并指定该对象静态方法?

Java 创建接口对象并指定该对象静态方法?,java,object,interface,Java,Object,Interface,这怎么可能? 这里的连接是接口 如何创建接口的对象 然后在分配连接的对象DriverManager类的静态方法getconnection之后。 这一切是如何运作的? 一头雾水 如果上面的代码是可能的,那么下面的代码应该可以工作,但它显示了我的错误 connection con = DriverManager getconnection(URL,user,pwd); 现在为什么我不能在这里创建接口的对象 比如说,一旦我们创建了接口对象,那么我们如何将对象分配给任何方法呢 我想我们应该按照下面的方

这怎么可能? 这里的连接是接口

如何创建接口的对象

然后在分配连接的对象DriverManager类的静态方法getconnection之后。 这一切是如何运作的? 一头雾水

如果上面的代码是可能的,那么下面的代码应该可以工作,但它显示了我的错误

connection con = DriverManager getconnection(URL,user,pwd);
现在为什么我不能在这里创建接口的对象

比如说,一旦我们创建了接口对象,那么我们如何将对象分配给任何方法呢

我想我们应该按照下面的方式去做

l、 set();//在非静态方法的情况下

A.get();//如果是静态方法


如果这是真的,那么我在这里介绍的第一个jdbc语法是如何工作的呢?

关于接口只有一条主要规则:不能使用
newinterfacename()初始化它们

现在,这个代码是否违反了这个规则?(我把它改得更好看)

你能在那里找到单词
new
?不这意味着它不会违反规则,因此它会编译

让我们看看您的代码:

Connection con = DriverManager.getconnection(URL,user,pwd);
查看
main
newh()
的第一行!你违反了规则!因此,它不会编译。(第二行也无法编译,因为
get
返回
void
btw)

事实上,在
DriverManager.getConnection
方法中,它可能包含如下代码:

public static void main(String arg[])
{

    h l= new h();

    h l = A.get();
}

其中,
XXXConnection
是一个实现
连接

接口的类,该词表示无论是在语言上下文中还是在现实世界中,都是实现抽象的一种方式

我建议您只浏览一下Java参考中的接口概念:

参考文献: 在其最常见的形式中,接口是一组具有空实体的相关方法。如果将自行车的行为指定为接口,则其行为可能如下所示:

Connection con = new XXXConnection();
简单地说,如果你说我们通过接口指定自行车的功能。但RangerBicycle或MountainBicycle等的实现类将为接口中定义的行为定义实时实体或对象

因此,当您尝试“实例化接口”时,编译器会向您显示错误消息,说明它无法实例化给定类型,因为它是一个接口


是的,您可以创建接口引用变量,该变量可以指向实现类的对象。

接口不能实例化,它只能作为实现该接口的类的对象的引用。也许您应该从和开始。接口是多态性的基石,您应该花时间进一步了解接口。接口是一个契约,它规定了任何给定的实现可以做什么或将提供什么,这意味着您永远不应该关心接口的物理实现方式,因为它“确实”遵守指定的接口契约
Connection con = new XXXConnection();
interface Bicycle {

    //  wheel revolutions per minute
    void changeCadence(int newValue);

    void changeGear(int newValue);

    void speedUp(int increment);

    void applyBrakes(int decrement);
}