假设我有一个扩展另一个类并实现一个或多个接口的类。如何指定需要此类条件的类型?
例如:
class Eagle extends Animal implements Fly {
}
class Falcon extends Animal implements Fly {
}
public static void main (){
??? anAnimalWhoCanFly;
}
更新:我删除了列表。假设我想要一个对象,它是扩展Animal并实现Fly的类的对象。
由于
答案 0 :(得分:2)
如果你想要一种方法来指定,例如,"扩展Animal 和的类型实现Fly",只需定义一个完全符合的类:
<?php
$con = mysqli_connect("localhost", "root", "", "mydb");
if(!$con) {
die('not connected');
}
$con = mysqli_query($con, "SELECT * FROM scoreboard");
?>
<center>
<div>
<center><td><h2>View Score</h2></td></center>
<table border="2">
<th>ID</th>
<th>VALUE 1</th>
<th>VALUE 2</th>
<th>VALUE 3</th>
<th>VALUE 4</th>
<th>VALUE 5</th>
<th>AVERAGE SCORE</th>
</tr>
<?php
while($row = mysqli_fetch_array($con)) {
?>
<tr>
<td><?php echo $row['id']; ?></td>
<td><?php echo $row['score1']; ?></td>
<td><?php echo $row['score2']; ?></td>
<td><?php echo $row['score3']; ?></td>
<td><?php echo $row['score4'] ;?></td>
<td><?php echo $row['score5'] ;?></td>
<td><?php echo $row['average'] ;?></td>
</tr>
<?php
}
?>
</table>
</div>
</center>
现在,public abstract class FlyingAnimal extends Animal implements Fly{ }
和Eagle
从[{1}}延伸,而不是直接从Falcon
延伸:
FlyingAnimal
现在你可以这样做:
Animal
答案 1 :(得分:0)
令人遗憾的是,如果@EvgenyTanhilevich是对的,我们不能在java中这样做。
我找到了某种方式可以做我想要的东西。这不是我想要的,因为它不需要该对象必须是实现Fly的类的实例,但仍然让我调用fly函数:
public class Main {
public static void main(String[] args) {
Eagle eagle = new Eagle();
((Fly)eagle).fly();
}
}