「java类型依赖」依赖的类型有哪些

博主:adminadmin 2023-01-10 11:12:09 666

今天给各位分享java类型依赖的知识,其中也会对依赖的类型有哪些进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何通俗的理解java的依赖注入

假设你编写了两个类,一个是人(Person),一个是手机(Mobile)。

人有时候需要用手机打电话,需要用到手机的callUp方法。

传统的写法是这样:

Java code

public class Person{

public boolean makeCall(long number){

Mobile mobile=new Mobile();

return mobile.callUp(number);

}

}

也就是说,类Person的makeCall方法对Mobile类具有依赖,必须手动生成一个新的实例new Mobile()才可以进行之后的工作。

依赖注入的思想是这样,当一个类(Person)对另一个类(Mobile)有依赖时,不再该类(Person)内部对依赖的类(Moblile)进行实例化,而是之前配置一个beans.xml,告诉容器所依赖的类(Mobile),在实例化该类(Person)时,容器自动注入一个所依赖的类(Mobile)的实例。

接口:

Java code

public Interface MobileInterface{

public boolean callUp(long number);

}

Person类:

Java code

public class Person{

private MobileInterface mobileInterface;

public boolean makeCall(long number){

return this.mobileInterface.callUp(number);

}

public void setMobileInterface(MobileInterface mobileInterface){

this.mobileInterface=mobileInterface;

}

}

在xml文件中配置依赖关系

Java code

bean id="person" class="Person"

property name="mobileInterface"

ref local="mobileInterface"/

/property

/bean

bean id="mobileInterface" class="Mobile"/

这样,Person类在实现拨打电话的时候,并不知道Mobile类的存在,它只知道调用一个接口MobileInterface,而MobileInterface的具体实现是通过Mobile类完成,并在使用时由容器自动注入,这样大大降低了不同类间相互依赖的关系。

java依赖注入的方法:set注入,构造方法注入,接口注入。

JAVA作业求助。

在Java中,依赖关系通常表示为一个类依赖于另一个类,因为它需要调用另一个类的方法或构造函数来完成它的工作。例如,假设我们有一个名为Car的类,它拥有一个名为startEngine的方法,用于启动汽车的发动机。我们还有一个名为Driver的类,它有一个名为drive的方法,用于驾驶汽车。那么Driver类就依赖于Car类,因为Driver类需要调用Car类的startEngine方法来启动汽车。

下面是一个示例代码,实现了一个依赖关系的场景:

=================

public class Car {

public void startEngine() {

System.out.println("Engine started.");

}

}

public class Driver {

private Car car;

public Driver(Car car) {

this.car = car;

}

public void drive() {

car.startEngine();

System.out.println("Car is being driven.");

}

}

public class Main {

public static void main(String[] args) {

Car car = new Car();

Driver driver = new Driver(car);

driver.drive();

}

}

=================

在这段代码中,Driver类的构造函数接收一个Car类的实例作为参数,并将它保存在私有字段car中。在Driver类的drive方法中,我们首先调用了car实例的startEngine方法,然后打印一条消息,表示汽车正在被驾驶。

关联关系通常表示为两个类之间的关系,它们之间的关系可能是一对一,一对多或多对多。例如,假设我们有一个名为Student的类,它有一个名为enroll的方法,用于选课。我们还有一个名为Course的类,它有一个名为addStudent的方法,用于添加学生。那么Student类和Course类之间就存在一对多的关联关系,因为一个学生可以选择多个课程,而一个课程也可以被多个学生选择。

下面是一个示例代码,实现了一个关联关系的场景:

=================

public class Student {

private ListCourse courses = new ArrayList();

public void enroll(Course course) {

courses.add(course);

course.addStudent(this);

}

}

public class Course {

private ListStudent students = new ArrayList();

public void addStudent(Student student) {

students.add(student);

}

}

public class Main {

public static void main(String[] args) {

Student student = new Student();

Course course1 = new Course();

Course course2 = new Course();

student.enroll(course1);

student.enroll(course2);

}

}

=================

在这段代码中,Student类拥有一个私有字段courses,表示学生选择的课程。Student类的enroll方法用于选课,它接收一个Course类的实例作为参数,并将它添加到courses列表中。同时,enroll方法还会调用课程实例的addStudent方法,将学生添加到课程的学生列表中。

在Main类的main方法中,我们创建了一个学生实例和两个课程实例。我们调用学生实例的enroll方法,将两个课程实例添加到学生的选课列表中,同时将学生添加到两个课程的学生列表中。这就实现了一对多的关联关系。

总之,依赖关系和关联关系都是表示两个类之间的关系,但是它们之间的关系不同。依赖关系表示一个类依赖于另一个类,因为它需要调用另一个类的方法或构造函数来完成它的工作;关联关系表示两个类之间的关系,它们之间可能是一对一,一对多或多对多。

java中类与类之间的关系有依赖和继承,那么这两种关系哪个效率高?

要是单纯说两个类之间的效率,那肯定是继承的效率更高了,因为继承使用了共有的资源,但是没有谁会光针对两个类来编程吧。

所以实际上是,无论继承还是依赖,只要

算法设计

恰当,效率都不会低。要是算法设计不好的话,让

时间复杂度

和空间

复杂度都无法控制,那么无论是依赖还是继承效率都不会高的。

因为继承和依赖是高级的抽象概念,具体到

计算机

只会考虑

二进制

指令与

数据流

,算法好的话,有限的指令与数据就能处理更多的问题。而这些指令和数据是依赖与继承都可以产生。

java类型依赖的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于依赖的类型有哪些、java类型依赖的信息别忘了在本站进行查找喔。