java this 传递-Java中this传递的用法

问题描述

Java中this传递的用法

假设有一个容器类和一个部件类,在容器类的某个方法中要创建部件类的实例对象,而部件类的构造方法要接收一个代表其所在容器的参数,那代码怎么写啊

解决方案

 没有继承关系的类,不能用构造函数传值。你可以让部件类的构造函数包含一个容器的参数,在其中初始化:
class Part
{
    pbulci Part(Container c)
        {
            ...
        }
}
class Container
{
    public Container()
        {
            Part p = new Part(this);
        }
}

解决方案二:

?
转帖this的用法方便自己以后查看
必须用this关键字的三种情况:
1、我们想通过构造方法将外部传入的参数赋值给类的成员变量,构造方法的形式参数名称与类的成员变量名相同。例如:

class Person

...{
String name;

public Person(String name)

...{

this.na......
答案就在这里:java中this的用法
----------------------

解决方案三:

public class A{
public void fun(){
B b = new B(this);
}
}
public class B{
public B(A a){

}

}
this 表示当前对象

时间: 2024-11-19 02:12:42

java this 传递-Java中this传递的用法的相关文章

c#-编写一个方法(完成值修改),传递参数中是传递实体类好还是类的成员好

问题描述 编写一个方法(完成值修改),传递参数中是传递实体类好还是类的成员好 如题,假如有个类Letter{int a,int b,int c....int z}(假设有26个成员吧),我如果想写一个方法来改变某几个成员的值的时候,方法的参数是定义fun(Letter letter)好,还是定义fun(int a,int b,int c,...)几个我需要修改的成员好,方法体的功能是改变原有的值. 解决方案 各有各的好处,参数多,传实体类方便,参数少,传参方便. 解决方案二: 传实体类,或者传成

Java的Hibernate框架中的基本映射用法讲解_java

Hibernate进行了分类整合发现其实Hibernate分为三大部分:核心对象.映射.HQL,这三大部分开发过程中最常使用,前几篇讨论了核心对象及对象之间的转换方法,接下来讨论Hibernate的映射使用方法.   Hibernate一个重要的功能就是映射,它能够在对象模型和关系模型之间转换,是面向对象编程思想提倡使用的,使用映射程序开发人员只需要关心对象模型中代码的编写.对象和关系数据库之间的映射通常是由XML文档来定义的.这个映射文档被设计为易读的,并且可以手动修改.这种映射关系我总结为下

详解Java的Spring框架中的注解的用法_java

1. 使用Spring注解来注入属性 1.1. 使用注解以前我们是怎样注入属性的 类的实现: class UserManagerImpl implements UserManager { private UserDao userDao; public void setUserDao(UserDao userDao) { this.userDao = userDao; } ... } 配置文件: <bean id="userManagerImpl" class="com.

java-关于Java方法中数组传递的问题

问题描述 关于Java方法中数组传递的问题 public class TestArrayMethod { public static void main(String [] args) { int score[]={1,5,7,2,3,9,4,6,8}; getMax(score); arraySort(score); public static void getMax(int arr[]) { int temp=arr[0]; for(int i=0;i<arr.length;i++) { i

java 传递过程中出现的问题解决方法

java 传递过程中出现的问题解决方法  * 测试conn关闭情况  */ package com.hb.test; import java.sql.connection; /**  *  * @author icecold  */ public class testconn {    static connection conn = null;     public static void main(string[] args)throws exception {         conn =

对象-java传递 ”值传递和引用传递“还是全部 “值传递”

问题描述 java传递 "值传递和引用传递"还是全部 "值传递" 若说值传递.基本类型是copy的值赋给形参,对象是把 堆中对象的 地址 传给 形参. 若说分为值传递和引用传递..引用传递 是因为这个传的地址,导致实参和形参 操作的都是同一块内存. 有点乱,像文字层次上的撕逼.. 若往引用传递方面思考,C++的指针又把我搅乱了.,java里不能直接管理内存,传递的不是 变量本身 的栈地址.而是变量的内容(值) 解决方案 java没有什么值传递引用传递,都是传递对象引

jsp中URL传递中文参数的处理方法

  在页面的url中使用encodeURI(encodeURI(中文)),对中文进行编码,并在服务器的java程序中使用URLDecoder.decode(中文, "UTF-8")进行解码即可; 如果url中需要传递+.#.?等特殊符号,可以使用encodeURIComponent(encodeURIComponent(中文)),服务器解码方法跟encodeURI的解码相同.

从Java的jar文件中读取数据的方法

  这篇文章主要介绍了从Java的jar文件中读取数据的方法,实例分析了java档案文件的相关操作技巧,需要的朋友可以参考下 本文实例讲述了从Java的jar文件中读取数据的方法.分享给大家供大家参考.具体如下: Java 档案 (Java Archive, JAR) 文件是基于 Java 技术的打包方案.它们允许开发人员把所有相关的内容 (.class.图片.声音和支持文件等) 打包到一个单一的文件中.JAR 文件格式支持压缩.身份验证和版本,以及许多其它特性. 从 JAR 文件中得到它所包含

Java 9的JDK中值得期待的:不仅是模块化

[译者注]在本文中,作者介绍了即将在9.21发布的Java 9新特性,除了最重要的模块化以外,还涉及到编译,工具,协议,缓存等新特点,也提及了在此次版本中移除的功能,供Java爱好者阅读和参考. 以下为译文: 在多次延期后,Java 9将于9月21日以Java开发工具包9的形式出现,这是自2014年3月以来,Java标准版的第一次重大升级.官方列出了JDK 9的大约90个新特性,模块化是最主要的一个.将Java重新配置成模块化格式,这项任务已经持续了多年,但在编译.代码缓存和JavaScript