search
HomeJavaJavagetting StartedWhat are the relationships between classes in Java?

What are the relationships between classes in Java?

Nov 30, 2019 pm 02:47 PM
javarelationkind

What are the relationships between classes in Java?

First of all, in java programming, there is the following relationship between classes:

1. Dependency

2. Association (aggregation (whole and part) relationship, such as a person and a hand) and combination (the relationship between a whole and a part, such as a person and a brain))

3. Inheritance

4. Implementation

java related videos Tutorial sharing: java learning

##1. Dependence

Definition:

indicates that one class depends on another The definition of a class, the method of one class manipulates the object of another class, applies to local variables, formal parameters of the method, or calls to static methods.

What are the relationships between classes in Java?

Example code:

/**
 * @Description: 依赖(Dependence)的定义:表示一个类依赖于另一个类的定义,一个类的方法操纵另一个类的对象
 * 应用于局域变量、方法的形参,或者对静态方法的调用。
 * @Author: 13394
 * @CreateDate: 2018/12/18 9:54
 */
public class Cook {
    public static void cook() {
        System.out.println("做饭");
    }

    public void eat() {
        System.out.println("吃饭");
    }

}
/**
 * @Description: TODO
 * @Author: 13394
 * @CreateDate: 2018/12/18 10:09
 */
public class BeforeCook {
    //局部变量
    public void before() {
        Cook cook = new Cook();
        System.out.println("饭前>>>>>>>>>>>>>>>");
        cook.eat();
    }

    //方法的形参
    public void before(Cook cook) {
        cook.eat();
    }

    //静态方法的调用
    public void before1() {
        Cook.cook();
    }

}

2. Association

Definition:

Association relationships are generally implemented using member variables, which means that one class uses another class as a member variable to call the attributes and methods of another class.

(1) Aggregation (the relationship between the whole and the part). Aggregation member variables are mainly assigned through the set method.

What are the relationships between classes in Java?

Example code:

public class Cook {
    public static void cook() {
        System.out.println("做饭");
    }

    public void eat() {
        System.out.println("吃饭");
    }

}

    public class BeforeCook {
        //成员变量
       private Cook cook;
       public void setBefore(Cook cook){
           cook.eat();
       }

}

(2) Composition (the relationship between the whole and the part), member variables are mainly assigned through the construction method .

Example code:

public class BeforeCook {
     //成员变量
    Cook cook;
    public BeforeCook(Cook cook){
        this.cook=cook;
    }
   }

3. Inheritance

The relationship between classes and classes, interfaces and interfaces.

What are the relationships between classes in Java?

4. Implementation

The relationship between classes and interfaces.

What are the relationships between classes in Java?

Related article tutorial sharing:

java quick start

The above is the detailed content of What are the relationships between classes in Java?. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:CSDN. If there is any infringement, please contact admin@php.cn delete

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools