【用Java继承实现动物类】教程文章相关的互联网学习教程文章

java – 继承和列表【代码】

B类扩展了A类.我有B的列表(List< B> list1),但是对于某些操作,我只需要A类字段,但List< A> list2 = list1不起作用.怎样才能解决这个问题?解决方法: List<? extends A> list2 = list1;这意味着“A的特定子类型的列表”. 如果你可以使用List< A>,这意味着“一个A的所有子类的列表”,你将失去编译时的安全性.想像:List<B> list1 = ..; List<A> list2 = list1; list2.add(new C()); for (B b : list1) {//ClassCastException - canno...

java中的继承 – 我无法理解的东西【代码】

我对Java中的继承有疑问,我无法理解: 我有这两个班:public class C {public void foo(D d){System.out.println("cd"); } }public class D extends C {public void foo(C c){System.out.println("dc"); }public void foo(D d){System.out.println("dd"); } }主要:public static void main(String[] args) {C cd = new D();D dd = (D)cd; }每个cd和dd的类型是什么?为什么?解决方法:这里涉及两种不同的类型: >变量的类型;...

java – 内在/监视器锁定和继承【代码】

背景: 我正在阅读Java Concurrency in Practice,清单2.7包含以下代码.该示例指出此代码仅起作用,因为监视器锁是可重入的. 我原本以为当你调用super.doSomething()时它会获得对基类对象的锁定而不是派生类对象.这意味着这种情况不需要重新进入.说到这一点,我也明白基类和派生类方法都可以改变基类字段,所以它们使用的锁必须是通用的(意思是我显然是错的). 题: 在继承层次结构中,每个对象是否存在一个“内在”锁定,或者仅在层次结构...

JAVA中的继承

原文链接:http://www.cnblogs.com/acaciasun/p/3306142.html1、父类中的私有数据域和方法在该类的外面不能引用,因此它们不能被子类继承 2、实例方法仅当可访问时才能被继承。因为私有方法不能在定义它的类外访问,所以它不能被覆盖。如果子类中定义的方法在父类中是所有的,那么这两个方法完全没有关系 3、与实例方法一样,静态方法也能继承。但是,静态方法不能覆盖。如果父类中定义的静态方法在子类中重新定义,父类的方法将被...

java – 对象可以继承字符串表示吗?【代码】

将对象显示为字符串时出现以下问题:class Gast{String voorNaam, achterNaam;datum geboorteDatum;Gast(String vNaam, String aNaam, datum input){voorNaam = vNaam;achterNaam = aNaam;geboorteDatum = input;}public String toString(){return("Naam: " + voorNaam + " " + achterNaam + " " + geboorteDatum);} }在这里,我实现了一种在字符串中表示此对象的方法,但是当我尝试在此类中使用它时:class Kamer{boolean vrij;Gast...

Java----13 继承与抽象类

面向对象有三大特点:封装,继承和多态,封装在之前已经有所描述,今天我们说一下继承 一、继承 继承的特点: 在Java中,类只支持单一继承(也就是一个儿子只能有一个亲爸爸) 可以多层继承,即一个类的父类可以再去继承另外的父类 继承中要用到一个关键字extends 继承中成员变量的特点: 1.子类只能获取父类非私有成员 子父类中成员变量的名字不一样直接获取父类的成员变量 子父类中成员变量名字是一样的获取的是子类的成员变量 2...

Java继承和方法解析顺序【代码】

我有以下代码示例:class p {public void druckauftrag() {// ...drucke();}public void drucke() {System.out.println("B/W-Printer");} }class cp extends p {public void drucke() {System.out.println("Color-Printer");} }调用以下行:cp colorprinter = new cp();cp.druckauftrag();理解为什么“cp.druckauftrag();”没有问题.导致控制台输出“彩色打印机”. 但是当我打电话时:p drucker = (p)colorprinter;drucker.druckau...

java – 没有继承的类的构造函数中的super()【代码】

参见英文答案 > super keyword without extends to the super class 2个我在Java Video-Tutorial中看到过以下代码(类的缩写版本).public class Address {private String firstName;private String lastName;public Address() {super();}public Address(String firstName, String lastName) {this.firstName = firstName;this.lastName = lastName;}... }这里显示的类没有extend关键字.然而,在构...

java – 使用不同主键的Hibernate继承【代码】

我正在尝试使用TABLE_PER_CLASS策略创建继承,但我想为每个表创建不同的主键是否可能? 我有一个类Register,它有数百万个实例,其中一些实例是“特殊的”,并且对于它们的列和额外的列有不同的规则.@MappedSuperclasspublic abstract class Register {@Id@Column(nullable = false, unique = true, updatable = false)private Long userId;private Date checked;@Column(nullable = false)private RegisterState tipo; }@Entity @Attr...

关于继承Java类的性质的问题【代码】

所以我认为我有一个非常基本的问题.假设您的项目com.bee.buzz中包含一个名为com.cow.moo的开源Java程序. moo有很多很棒的课程,其中大部分是你不想触摸的,但是有一些你做的.现在,在这一点上,最好的办法是扩展你想要修改的类,对吧? (我知道有很多关于扩展与实现的说法,但这些类都不是接口,所以这是不可能的.) 我的问题是,说这是moo中的类:package com.cow.moo; public class Milk {private float currentMilk;public int getMilk()...

Java,如何从抽象类继承方法【代码】

我有一个抽象类Person和接口可比,它也用于程序的其他部分.目前我在Person中有一个方法compareTo().当我尝试编译时,我得到:The type Student must implement the inherited abstract method Comparable<Person>.compareTo(Person, Person)我到底要做什么?我不会在任何子类中实现此方法,因为我需要所有这些方法,学生,导师,教授等…有更好的方法吗? 接口:interface Comparable<Element> {public int compareTo(Element nodeA, Ele...

java – 继承如何处理for-each循环?【代码】

继承如何与for-each循环相关?想象一下,我有两个类:SubClass和SuperClass,我有以下ArrayList./** * Containes both SuperClass and SubClass instances. */ ArrayList<SuperClass> superClasses = new ArrayList<SuperClass>(); 是否可以以仅选择子类的方式迭代superClasses. 下列:for(SubClass subClass : superClasses){// Do Foo }不这样做.以下是我唯一可以开展的工作:for(SuperClass superClass : superClasses){if(superC...

Java:可以说变量类型必须满足多个继承/接口要求【代码】

在我正在使用的一些代码中,我有一个现有的第三方API,它实现了从A扩展的东西(也许不是直接的,但是通过X,也许还实现了一堆其他接口). 现在,对于我正在处理的代码,我有一个接口IB,它为A提供的功能提供了额外的功能.因此,我的很多代码实际上都要求传递给它的对象扩展A,并且还实现IB,但是没有办法声明我能想到的成员变量.但是选择A或IB会导致很多演员阵容. 我想如果A是/有一个接口IA会解决这个问题,但是我无法改变A,或者我的IB实现不需要...

java – 在其引用类型和父类引用类型中继承类对象之间的区别是什么【代码】

我有这三个班public class Abc {public methAbc(){System.out.println("parent class method");} }public class Xyz extends Abc {public methAbc(){System.out.println("overriden parent class method");}public methXyz(){System.out.println("child class method");} }class Pqr {Xyz childObjChildRef = new Xyz();Abc childObjParentdRef = new Xyz(); }在课程Pqr在不同引用中创建对象的主要区别是什么 1:在同一个类引用中...

java – 在继承中,当为子类创建对象时,是否还为其超类创建了一个对象?【代码】

>在继承中,当为子类创建对象时,是否还为其超类创建了一个对象?我发现上述问题的答案是肯定的,它已经创建了.我对吗?>基于它是正确的假设,我解决了这个问题,我发现答案是4.我对吗?>长期是原始类型还是包装类? 问题:到达最后一个括号时,有多少对象符合垃圾回收的条件?interface Animal {void makeNoise();}class Horse implements Animal { Long weight = 1200L;//here is Long a primitive variable or a wrapper class??//If ...