java语言不是不支持多继承吗,这里已经继承了JFrame类,不是靠只能实现Runnable接口来创建线程吗?这里的匿名内部类并没有实现Runnable接口啊
可这里并不是实现多接口,我奇怪就奇怪在这里,如果是实现接口,我可以理解,可这里却是继承Thread类,继承了JFrame,怎么还能继承Thread类呢?
可这里并不是实现多接口,我奇怪就奇怪在这里,如果是实现接口,我可以理解,可这里却是继承Thread类,继承了JFrame,怎么还能继承Thread类呢?
追答你理解错了。 这个代码只是在内部做了一个匿名类去继承thread。本身没有继承thread。
这个匿名类只是里面的一个成员变量。
你这样理解一下。
Class B 继承了Thread。
Class A 继承了 JFrame。 而且A里有个成员 B b 。
只是由于B只用一次。所以简化的写法是吧B的定义放在A里,连B的名称都省略了。 这个就叫做匿名类。
你可以在网上再查一下匿名类的说明
java面试题全集中?
不支持,Java不支持多继承。每个类都只能继承一个类,但是可以实现多个接口。 7.Java中,什么是构造函数?什么是构造函数重载?什么是复制构造函数? 当新对象被创建的时候,构造函数会被调用。每一个类都有构造函数。在程序员没有给类提供构造函数的情况下,Java编译器会为这个类创建一个默认的构造函数。 Java中构造函数...
java面试中经常被问到的问题有哪些?
通过实现java.lang.Runnable或者通过扩展java.lang.Thread类。相比扩展Thread,实现Runnable接口可能更优.原因有二:Java不支持多继承。因此扩展Thread类就代表这个子类不能扩展其他类。而实现Runnable接口的类还可能扩展另一个类。类可能只要求可执行即可,因此继承整个Thread类的开销过大。5、Thread类中的star...
java面试题汇总(一)?
2、创建两种线程的方式?他们有什么区别?通过实现java.lang.Runnable或者通过扩展java.lang.Thread类。相比扩展Thread,实现Runnable接口可能更优.原因有二:Java不支持多继承。因此扩展Thread类就代表这个子类不能扩展其他类。3、第三,StaticNestedClass和InnerClass的不同,说得越多越好(面试题有的很笼统)...
高级java面试问题(java中高级面试技术问题)
Java开发面试题自动装箱是Java编译器在基本数据类型和对应的对象包装类型之间做的一个转化。比如:把int转化成Integer,double转化成double,等等。反之就是自动拆箱。Java支持多继承么?不支持,Java不支持多继承。java异常机制的原理与应用\\x0d\\x0a每当程序出现异常之后,如果程序没有进行相应的处理,则程...
java是什么
2、Java语言是一个面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++ 语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。 3、Java语言是分布式的...
JAVA题一份,求答案,满意给高分,时间紧迫,速度!!
Java不支持多重继承,但可通过(实现多个interface)实现多继承。Java源程序经编译生成的字节码文件的扩展名为(.class)Java的核心包中,提供编程应用的基本类的包是(java.lang)每个Java应用程序可以包括许多方法,但必须有且只能有一个(main)方法。当实现Runnable接口时,要实现的方法是(public void ...
JAVA.包 JAVA类 JAVA APPLET ...等跟JAVA挨得上边得都要!
由于Java不支持多继承,而有可能某个类或对象要使用分别在几个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面所有的方法和属性,并且接口里面的属性在默认状态下面都是 public static,所有方法...
Java面试题
HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。 HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为contains方法容易让人引起误解。 Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。 最大的不同是,Hashtable的方法是Synchronize的,而HashMap...
Java多线程是什么意思?
Java多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。1、继承Thread类实现多线程继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了...
Java多线程和单线程怎么通俗易懂的理解?
Java的核心特性之一就是支持多线程,线程是程序执行的基本单元,每个线程都有自己的栈空间,虽然可以共享程序的全局资源,但每个线程的执行是独立的。要实现多线程,你可以选择继承Thread类或者实现Runnable接口。前者适用于简单扩展,而后者则避免了Java单继承的限制,但设计上稍显复杂。创建Java线程有三种方法...