Este artigo compartilha dois usos clássicos da interface Java para sua referência. O conteúdo específico é o seguinte
1. Exemplo de carregamento dinâmico da interface polimórfica Java
Escreva um programa geral para calcular o tempo que leva para que os veículos que não sejam de transporte de 1.000 quilômetros. Sabe -se que os parâmetros de cada transporte são 3 expressões de números inteiros A, B e C. Existem duas ferramentas existentes: carro e avião, onde a fórmula de cálculo de velocidade do carro é: a+b+c. Existem três classes que precisam ser escritas: computetime.java, Palne.java, car.java e interface Common.java. É necessário que, se o terceiro veículo de transporte for adicionado no futuro, não há necessidade de modificar quaisquer procedimentos anteriores, mas apenas novos procedimentos de veículo de transporte são necessários. O processo de operação é o seguinte:
Digite os quatro parâmetros do ComputETime na linha de comando. O primeiro é o tipo de veículo, e o segundo, terceiro e quarto parâmetros são os números inteiros A, B e C. Como exemplo:
Calcule o tempo do plano: "Plano 20 30 40"
Calcule o tempo do carro: "Car 23 34 45"
Se o veículo em terceiro lugar é o navio, você precisará escrever ship.java e a entrada de tempo de execução: "Navio 22 33 44"
Dica: faça pleno uso do conceito de interfaces e objetos de interface atuam como parâmetros.
Outra maneira de instanciar um objeto: Class.ForName (STR) .NewInstance (); por exemplo, é necessário instanciar
Para um objeto de avião, basta ligar para classe.ForName ("Plane"). NewInstance ().
Código:
1. ComputTime.java, verifique se a entrada está correta, onde a númeroFromatexception não é pego
importar caltime.vehicle.all.common; importar java .lang.*; classe pública ComputETime {public static void main (string args []) {System.out.println ("Travel:"+args [0]); System.out.println ("Parâmetro"+args [1]); System.out.out.Pty.PT.Println ("Parâmetros A:"+args [1]); System.out.out.Int.Pt.PT.PRINTLN ("ARGS [1]; "+args [2]); System.out.println (" Parâmetro C: "+Args [3]); Double a = Double.parseDouble (args [1]); duplo b = duplo.parsedouble (args [2]); duplo c = duplo. Class.ForName ("Caltime.vehicle."+Args [0]). NewInstance (); V = D.Runtimer (A, B, C); T = 1000/V; System.out.println ("Speed Média:"+V+"Km/H"); System.out.Intln ("RunTime:" T+Halls "" "); {System.out.println ("classe não encontrada");}}} 2.Plane.java
pacote caltime.vehicle; importar caltime.vehicle.all.common; public classe plana implementa Common {public duplo runtimer (duplo a, duplo b, duplo c) {return (a + b + c);}} 3. Car.Java
pacote caltime.vehicle; importar caltime.vehicle.all.common; public class Car CAR implementa Common {public Double Runtimer (Double A, Double B, Double C) {return (A*B/C);}} 4.common.java
pacote caltime.vehicle.all; interface pública Common {duplo runtimer (duplo a, duplo b, duplo c);} Um resultado de execução:
C:/ java> Java Computetime Car 100 45 67
Transporte: carro
Parâmetro A: 100
Parâmetro B: 45
Parâmetro C: 67
Velocidade média: 67.16417910447761 km/h
Tempo de execução: 14.888888888888889 Horas
C:/ Java> Java Computetime Plane 130 45 67
Transporte: Plano
Parâmetro A: 130
Parâmetro B: 45
Parâmetro C: 67
Velocidade média: 242,0 km/h
Tempo de execução: 4.132231404958677 Horas
Este exemplo demonstra o uso clássico de interfaces e o pensamento em Java também fez uma análise profunda sobre isso, para que você possa conferir.
2. A interface é passada como um parâmetro do método.
Exemplo:
interface estendbroadable {public void input ();} classe keybroad implementos estendbroadable {public void input () {System.out.println ("/n oi, keybroad tem informações sobre os implementos do mainbroad!/n"); input () {System.out.println ("/n oi, netcardbroad tem sido inserida no então mainbroad!/n");}} classe checkbroad {public void getMainMessage (extendbroadable ext) {extu.Input ();}}}}}}}}}}}}}) Keybroad (); netcardbroad ncb = new netcardbroad (); checkbroad cb = new checkBroad (); cb.getMainMessage (kb); cb.getMainMessage (NCB); }} Os parâmetros do tipo de interface podem ser usados como parâmetros de método. Em uso real, a classe que implementa a interface pode ser passada para o método, e o método pode ser executado de acordo com o princípio da reescrita. A chamada real é o corpo do código do método na classe de implementação. Isso permite que diferentes funções sejam implementadas de acordo com os parâmetros transmitidos.
O importante é que, quando preciso de outro objeto no futuro e ter meu próprio corpo de método, não precisamos reescrever a classe original, precisamos apenas de uma nova classe para implementar a interface.
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.