
Java多重继承
为了完全理解如何解决Java的多重继承问题,我有一个经典的问题需要澄清。可以说我有类Animal此有子类Bird和Horse我需要做一个类Pegasus,从扩展Bird和Horse自Pegasus既是一只鸟和一匹马。我认为这是经典的钻石问题。从我能理解经典的方式来解决,这是使Animal,Bird和Horse类接口,并实现Pegasus从他们。我想...
2024-01-10
Java继承字段
我无法理解以下输出。我不知道为什么输出为10,我认为该行A a = new B()创建了B类的新实例,我认为结果应为20class A { int i = 10;}class B extends A { int i = 20;}public class MainClass { public static void main(String[] args) { A a = new B(); System.out.println(a.i); }}为什么这样工作....
2024-01-10
Java枚举继承
为什么Java中的枚举不能从其他枚举继承?为什么以这种方式实施?回答:例子因为将元素添加到枚举将有效地创建超类,而不是子类。考虑: enum First {One, Two} enum Second extends First {Three, Four} First a = Second.Four; // clearly illegal Second a = First.One; // should work这与常规类的工作方式相反。我想可以...
2024-01-10
Java构造函数继承
我想知道为什么在Java中不继承构造函数?你知道当你上这样的课时:public class Super { public Super(ServiceA serviceA, ServiceB serviceB, ServiceC serviceC){ this.serviceA = serviceA; //etc } }稍后当你从继承时Super,java会抱怨没有定义默认的构造函数。解决方案显然是这样的:public class Son extends Super{ public Son(...
2024-01-10
Java-继承 共3题
一、实现一个名为Person的类和它的子类Employee,Employee有两个子类Faculty和Staff。具体要求如下:(1)Person类中的属性有:姓名name(String类型),地址address(String类型),电话号码telphone(String类型)和电子邮件地址email(String类型);(2)Employee类中的属性有:办公室office(String类型),工资wage(doub...
2024-01-10
在Java中继承静态变量
我想要以下设置:abstract class Parent { public static String ACONSTANT; // I'd use abstract here if it was allowed // Other stuff follows}class Child extends Parent { public static String ACONSTANT = "some value"; // etc}这在Java中可能吗?怎么样?如果可以避免的话,我宁愿不使用实...
2024-01-10
什么是继承java
品牌型号:联想拯救者 R7000P系统:Windows10继承java意思就是子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法。定义一个继承的语法:修饰符class子类类名extends父类名{//类定义部分},这就是一个继承的一个语法模式,记住关键字extends。继承是面向对象软件技术当中的一个概念。如果一个类A继承自另一个类B,就把这个A称为"B的子类",...
2024-02-06
Java继承-调用超类方法
假设我有以下两个课程public class alpha { public alpha(){ //some logic } public void alphaMethod1(){ //some logic }}public class beta extends alpha { public beta(){ //some logic } public void alphaMethod1(){ //some log...
2024-01-10
在Java中禁止继承的理由?
有什么理由禁止Java中的继承,例如通过使用最终类或使用单个私有无参数构造函数的类?将方法定型的充分理由是什么?回答:这里最好的参考是Joshua Bloch的出色著作“ Effective Java”的第19项,称为“继承的设计和文档,否则将禁止继承”。(在第二版中是第17项,在第一版中是第15项。)你应该阅读...
2024-01-10
Java 继承与组成之间的区别
组成和继承相同吗?如果要实现合成模式,如何在Java中实现呢?回答:组成意味着HAS A继承IS AExample:汽车有发动机,汽车是汽车在编程中,它表示为:class Engine {} // The Engine class.class Automobile {} // Automobile class which is parent to Car class.class Car extends Automobile { // Car is an Automobile, so Car class ex...
2024-01-10
Java中final字段的继承?
当超类具有标记为final的字段但子类覆盖(隐藏?)此字段时,会发生什么?“最终”并没有阻止它,不是吗?我正在处理的特定示例是Building类,从中继承了各种建筑物。除其他事项外,每种类型的成本对于每个子类都应是最终成本,但是每种类型的建筑物应具有自己的成本。编辑:从那以后,我意...
2024-01-10
java中继承与委派有什么区别
java中的继承和委托有什么区别?如何在我的项目中使用以下示例?请你指导我。我了解继承,但对委托没有太多了解。因此,请给出适当的理由。我为什么要用这个? package com.m; class RealPrinter { // the "delegate" void print() { System.out.println("something"); } } class Printer { // the "delegator" RealPrinte...
2024-01-10
为什么Java类不从实现的接口继承注释?
我一直在使用Guice的AOP来拦截一些方法调用。我的课程实现了一个接口,我想注释接口方法,以便Guice可以选择正确的方法。即使使用继承的注释对注释类型进行注释,实现类也不会继承Inherited的java doc中所述的注释:还要注意,此元注释仅使注释从超类继承;已实现的接口上的注释无效。这可能是什...
2024-01-10
为什么在Java或C#中不允许多重继承?
我知道Java和C#中不允许多重继承。许多书只是说,不允许多重继承。但是可以通过使用接口来实现。没有任何关于为什么不允许它的讨论。谁能确切告诉我为什么不允许这样做?回答:简短的答案是:因为语言设计师决定不这样做。基本上,.NET和Java设计器似乎都不允许多重继承,因为他们认为添加...
2024-01-10
接口是否从Java中的Object类继承
接口是否从Object Java中的类继承?如果否,那么我们如何在接口实例上调用对象类的方法public class Test { public static void main(String[] args) { Employee e = null; e.equals(null); }}interface Employee {}回答:接口是否从Object Java中的类继承?不,他们没有。而且,就这一点而言,也不存在所有接口都...
2024-01-10
Java,无法降低从对象继承的方法的可见性
继续这个问题:为什么不能降低Java子类中方法的可见性?我需要创建B几乎与class相同的类A,除了B不能做某些可以做的事情A。作为一个懒惰的程序员,我试图继承A,只是为了迎接B无法降低A方法可视性的错误。h!..现在A是供应商提供的API,我的意图是封装此API,以便更易于使用。我想知道解决此问...
2024-01-10
Java继承和多态性之间的主要区别是什么?
今天在模块公开书考试结束时,我被问到了这个问题,结果发现自己迷路了。我正在阅读Head first Java,这两个定义似乎完全相同。我只是想知道我自己的主要区别是什么。我知道有很多与此类似的问题,但是我没有看到能提供确定答案的问题。回答:继承是指“类”源自现有的“类”。所以,如果你...
2024-01-10
JSon模式和继承
我已经使用具有继承性的Java绑定搜索了json模式,并且所有搜索都导致我使用“ allOf”。使用allOf可能会解决我的问题,但我想知道json模式中是否有可以使用的构造,该构造将生成具有真实Java继承“ B扩展A”的Java代码-而不是在B内插入A的所有属性?我想知道这是否被支持/可行,或者我只是在做梦。...
2024-01-10
Jinja2中的多级模板继承?
我按行业来做html /css,并且我一直作为模板设计者从事django项目的工作。我目前正在使用Jinja2的网站上工作,该网站已经使用了大约2周。通过阅读文档,我发现Jinja2不支持多级模板继承,因为您不能做多个{% extends "foo" %}每个渲染。现在,我非常确定您可以在Django中执行此操作,该功能非常强大,因...
2024-01-10
为什么Java中没有多重继承,但是允许实现多个接口?
Java不允许多重继承,但是它允许实现多个接口。为什么?回答:因为接口只指定什么类是做,而不是如何它是做什么的。多重继承的问题在于,两个类可能定义不同的方式来做同一件事,而子类无法选择该选择哪一个。...
2024-01-10
Java为什么要使用接口,多重继承与接口,接口的优点?
我对此事仍然有些困惑。我到目前为止发现的是(这里已经问过类似的问题,但我还有其他几点。)接口是仅抽象方法和最终字段的集合。Java中没有多重继承。接口可以用于在Java中实现多重继承。继承的一个强项是我们可以在派生类中使用基类的代码,而无需再次编写。可能这是继承在那里最重...
2024-01-10
为什么不能从Java的另一个包中的继承类调用受保护的方法?
假设存在以下基类:package bg.svetlin.ui.controls;public abstract class Control { protected int getHeight() { //.. } //...}同样,在同一个程序包中,有一个继承的类:package bg.svetlin.ui.controls;public abstract class LayoutControl extends Control { public abstract voi...
2024-01-10
Java,参数中有3个点
以下方法中的三个点是什么意思?public void myMethod(String... strings){ // method body}回答:这意味着可以将零个或多个String对象(或它们的数组)作为该方法的参数传递。请参见此处的“任意数量的参数”部分:http : //java.sun.com/docs/books/tutorial/java/javaOO/arguments.html#varargs在你的示例中,可以将其称为以...
2024-01-10
Java循环一定时间
有没有一种方法可以轻松地在一定时间内进行for循环?(无需使用System.currentTimeMillis()自己测量时间?)即我想在Java中执行以下操作:int x = 0;for( 2 minutes ) { System.out.println(x++);}谢谢回答:不,没有内置的结构可以做到这一点。我想指出,您不应使用System.currentTimeMillis()在指定时间段内执...
2024-01-10
使用Java的SSL上的LDAP
以下代码可以正常工作:public static void main(String[] args) { String userName = "admin"; String password = "s3cret"; Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDE...
2024-01-10
Java是否对类名长度有限制?
这个问题出现在Spring类中,该类具有相当长的类名称。类名长度的语言是否有限制?回答:在Java语言规范指出标识符的长度不受限制。但是实际上,文件系统将限制生成的文件名的长度。...
2024-01-10
非阻塞IO与异步IO以及Java实现
尝试为自己总结这两个概念之间的区别(因为当我看到人们在一句话中同时使用这两个概念时,我感到非常困惑,例如“ Non-blocking asyncIO”,我试图弄清楚它是做什么的)意思)。因此,以我的理解,无阻塞IO是操作系统的主要机制,如果有任何可用数据,则该OS处理IO,否则仅返回错误/不执行任何操...
2024-01-10
用Java快速实现端口转发
我已经构建了一个打开ServerSocket的简单应用程序,并在连接时将其自身连接到远程计算机上的另一个服务器套接字。为了实现端口转发,我使用了两个线程,一个线程从本地输入流读取并向远程套接字输出流读取流,反之亦然。该实现感觉有点差劲,所以我问您是否知道更好的实现策略,或者是否有一...
2024-01-10
Java根据参数进行同步(名为互斥锁)
我正在寻找一种基于接收到的参数来同步方法的方法,如下所示:public synchronized void doSomething(name){//some code}我希望doSomething基于这样的name参数来同步方法:线程1:doSomething(“ a”);线程2:doSomething(“ b”);线程3:doSomething(“ c”);线程4:doSomething(“ a”);线程1,线程2和线程3将在不同...
2024-01-10
用Java获取计算机名称
我想知道是否有一种方法可以用Java获取计算机名称?我已经看到了该功能的几个答案java.net.InetAddress。但是我想知道是否存在不使用网络的方法?(作为一个附带的问题,计算机名称是否仍然只是一个网络事物,因此必须以这种方式进行??)回答:操作系统的基础DNS(域名系统)库从IP地址 解析 计...
2024-01-10
在Java中创建自定义事件
我想用Java做这样的事情,但我不知道这样:当事件“对象1说’你好’”发生时,对象2通过说“你好”来响应该事件。有人可以给我提示或示例代码吗?回答:以下是一些示例代码,可以帮助你入门:import java.util.*;// An interface to be implemented by everyone interested in "Hello" eventsinterface HelloListener { void ...
2024-01-10
Java在堆中最大的对象大小
如果设置最大Java堆大小-Xmx512m,那么单个对象可能的最大大小是多少?假设我的应用程序只有一个类,而我正在创建一个对象。该对象有大约大小限制吗?我的课看起来像下面的课:public class BigSingleObj { //conf will contain thousand of String. private Map<String, String> conf = new HashMap<String, String>(); public Str...
2024-01-10
