① java 类实现接口方法
public class Aircraft implements Vehicle{
private int speed;
public Aircraft(){}
public void setSpeed(int speed){
this.speed=speed;
}
public int getSpeed(){
return this.speed;
}
public void start(int speed){
setSpeed(speed);
}
public void stop(){
this.speed=0;
}
}
Bus同上。
希望对你有所帮助。。。
② java 怎么通过接口获取实现类
是类实现某接口
class MyClass implements MyInterface{
}
~
~
~
③ java 类怎么调用接口实现类
直接写成Person p = new Student();即可 这是为了让买你代码的人看不到内部代码 怎么实现的被隐藏了
1.Java的多态性 就是多种变现形式 接口跟实现类都能完成同样的功能
2.隐藏内部代码块 人家只知道用p能调用Student的功能但是不知道你 Student类是怎么实现的
3.解耦合性 Java的接口多继承
④ java如何获得实现接口的实际类型
Class clz = list.getClass();
//获取实际类型 即new谁获取谁的类型
System.out.println(clz);
⑤ java 由接口类集合获得实现类集合
您好,提问者:
这个是属于向下转型,比如我举个例子:
//这是一个接口
interfacePerson{
}
classZhangXinimplementsPerson{
}
//转换方式,多态就是父类指向子类的实例
Personp=newZhangXin();
//转为子类
ZhangXinzx=(ZhangXin)p;
⑥ 如何利用java反射,获取属性接口的具体类
你可以这么写:
class BodyImpl implements Body{
//do something
public static void main(String[] args) {
Type[] interfaces = BodyImpl.class.getInterfaces();
ParameterizedType firstInterface = (ParameterizedType) interfaces[0];
Class c = (Class) firstInterface.getActualTypeArguments()[0];
System.out.println(c.getName()); // prints "AtomEntry"
}
}
就得到你所要的接口参数了!
⑦ Java 怎么通过反射获取并实现这个类里面的接口,并且实现接口中的方法
获取当前线程的ClassLoader,通过ClassLoader获取当前工作目录,对目录下的文件进行遍历扫描。过滤出以.class为后缀的类文件,并加载类到list中,对list中所有类进行校验,判断是否为指定接口的实现类,并排除自身。返回所有符合条件的类。
这个方没有考虑不同的文件格式。当程序打成jar包,发布运行时,上述的这种遍历file的操作就失效了。只能扫描到当前方法的同级目录及其子目录。无法覆盖整个模块,遍历文件的逻辑太啰嗦,可以简化。
(7)java获取接口的实现类扩展阅读:
Java使用注意事项:
1、如果没有定义环境变量classpath,java启动jvm后,会在当前目录下查找要运行的类文件。
2、如果指定了classpath,那么会在指定的目录下查找要运行的类文件。
3、PATH环境变量。作用是指定命令搜索路径,在命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。
4、需要把jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好PATH变量后,就可以在任何目录下执行javac/java等工具了。
⑧ 在IDE中,java代码,怎么查看一个接口(interface)的所有实现类
如果你自己也不知道这个接口有哪些实现类的,采用java默认的ClassLoader是没有办法获得所有实现类的,因为ClassLoader是在程序运行期间才会加载类到static区域,即如果你的程序需要使用某一个class,jvm发现这个class还没有被ClassLoader加载,就会主动去加载,否则就跳过,你没办法知道那些未被加载的实现类。
如果你知道有哪些实现类的话,那就简单了,自己配置一个xml文件,把实现类的完整类名写在这个xml文件,再写一个解析程序,迭代每一个类名,直接用Class.forName加载就可以了。
甚至你可以去解析所有的java源文件或class文件,像eclipse之类的IDE就是这么干的,它管理工程下的所有class,解析这些class,这样我们写程序的时候,才有代码提示之类的功能。
如果你纯粹只想知道这个接口的实现类,在eclipse里面选中接口,按下F4,eclipse会为你列出所有的实现类。
⑨ java中如何在eclipse里查看一个接口的所有实现类
首先选中接口类型名字,右键菜单,如图
这样你就能轻松查看有哪些类实现该接口
该方法不仅仅适用接口,也可以查找某个类的子父级关系
⑩ java怎么根据接口找到所有的实现类
所谓多态,是把不同的子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异,但子类实例的本身类型没有改变;如:
A x = new B();
这里虽然是声明了一个 A 类型变量,但 x 的值仍然是指向一个B类型,也就是说x.save()是直接调用 B 类对象的save方法,并没有通过其他方式,它本身就是B类型对象,你可以打印信息 println(x.getClass()) ,它输出的是 B 类而不是 A 类。