java对象调用方法,java 对象调用
先通过代码简单描述一下你的问题:
public interface A {}
public class B implements A {
public void b() {}
}
public abstract class C {
private A a;
public void setA(A a) {
this.a = a;
}
...
}
public class D extends C {
...
public void d() {
// 此处想通过this.a访问到对象B的b方法
}
}
修改方式一:
public abstract class C {
protected A a;
public void setA(A a) {
this.a = a;
}
...
}
public class D extends C {
...
public void d() {
// 此处通过this.a访问到传入对象B的b方法
if(this.a instanceof B) {
((B) this.a).b();
}else {
...
}
}
}
修改方式二:
public abstract class C {
private A a;
public void setA(A a) {
this.a = a;
}
protected A getA() {
return a;
}
...
}
public class D extends C {
...
public void d() {
// 此处想通过getA()访问到传入对象B的b方法
A a = getA();
if(a instanceof B) {
((B) a).b();
}else {
...
}
}
}
java对象调用方法,java 对象调用相关推荐
- 获取随机数的方式Random类对象的方法 java 0913
获取随机数的方式Random类对象的方法 java 0913 Random类 实例化这个类得到一个对象 利用对象的方法获取整数 代码 import java.util.Random;public cl ...
- vue中组件之间调用方法——子组件调用父组件的方法 父组件调用子组件的方法
vue中组件之间调用方法--子组件调用父组件的方法 & 父组件调用子组件的方法 1.vue中子组件调用父组件的方法 1.1.第一种方法是直接在子组件中通过this.$parent.event来 ...
- Java的基础方法Java的对象_java基础之 创建对象的几种方式
有4种显式地创建对象的方式: 1.用new语句创建对象,这是最常用的创建对象的方式. 2.运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor ...
- $emit传递多个参数_10年架构师深解java核心技术:方法参数+对象构造,确定不学?...
方法参数 首先回顾一下在程序设计语言中有关参数传递给方法(或函数)的一些专业术语.值调用(call by value)表示方法接收的是调用者提供的值.而引用调用(call by reference)表 ...
- java 反射 set方法_java 反射调用set方法
Java语言中的许多库类名称,多与咖啡有关.下面是小编为您带来的java 反射调用set方法,希望对大家有所帮助. java 反射调用set方法: import java.beans.Property ...
- java 异步调用方法_java异步调用方法有哪些?如何实现异步调用?
你知道java异步调用方法都有哪些吗?下面的文章内容,就对这方面的问题做了一下整理,一起来看看java异步调用的方法吧! 1.利用Spring的异步方法去执行 注:没有返回值 在启动类又或者是配置类加 ...
- java基础类,方法和对象
api 即为应用程序编程接口,英文为Application programming interface System System.currentimeMillis 获取毫秒数(事件戳) System ...
- java 动态调用方法_Java动态调用方法
public void function(String str) { //根据 str的值 调用相应的方法 } public void test() { //code } 如str的值为test,就调 ...
- java怎么调用方法_Java怎么调用类方法
Java调用类方法的步骤:首先新建一个类,在调用类中先进行被调用类实例化:然后通过实例化的对象访问:最后新建一个类,将该类中需要被调用的方法设置为静态,加了static后,就可以用类名直接调用,格式为 ...
- JAVA基础之方法的递归调用
1.基本说明 递归调用就是在当前的函数中调用当前的函数并传给相应的参数,这是一个动作,这一动作是层层进行的,直到满足一般情况的的时候,才停止递归调用,开始从最后一个递归调用返回. 简单的说:递归就是方 ...
最新文章
- java导入包写在第二行的吗_使用Java命令行方式导入第三方jar包来运行Java程序的命令...
- 《OpenGL超级宝典第5版》学习笔记(一)—— 第一个OpenGL程序
- 用户太多太杂,搞不懂怎么办?“分门别类”将拯救你
- [Leetcode][第44题][JAVA][通配符匹配][贪心][动态规划]
- C++:15---异常机制
- java查询SQLServer遇到问题:对象名无效。
- 信息学奥赛一本通 1925:【03NOIP普及组】麦森数 | OpenJudge NOI 4.4 1708:麦森数 | 洛谷 P1045 [NOIP2003 普及组] 麦森数
- 某页纸api接口网站源码 高速php源码
- thinkphp redis队列处理_教你用ThinkPHP中thinkphpqueue
- 用微软makecert.exe生成一个自签名的证书
- python图像增强算法_python 图像增强算法实现详解
- 软件项目管理(学习笔记)
- 第10章第4节:使用iSlide的统一色彩命令统一修改某个颜色 [PowerPoint精美幻灯片实战教程]
- 修改macOS中鼠标滚轮方向
- java workbook.close_找不到符号Workbook.close()
- 基础Constants用法
- 【ML从入门到入土系列01】概述
- The Fool HDU 6555 思维/数论
- 扒一扒DDR4的新功能和PCB设计上的一些注意事项--转
- 结构体 5.火星人足球赛
热门文章
- Error:Execution failed for task ':app:lint'.
- POST数据加密问题
- ADT(abstract data types)抽象数据类型
- Mysql + keepalived 实现双主热备读写分离
- 怎么设置Linux swap分区?方法教程
- 基于Sendmail、Dovecot和Ssl的电子邮件服务器搭建——从不安全通信到安全通信
- 报错Caused by: org.hibernate.AnnotationException: No identifier specified for entity: com.liuyanzhao.b
- Mybatis无法获取带有下划线前缀的字段的值
- python @符号_注意!大佬提醒你python初学者这几个很难绕过的坑,附教程资料
- 【HDU4456】Crowd(曼哈顿距离转切比雪夫距离+二维坐标hash离散化+二维树状数组)