java-对象和类

本文介绍了面向对象编程的基础知识,包括对象、类、实例化和它们之间的关系。对象具有状态和行为,类是对象的模板,定义了属性和方法。包装类用于将基本数据类型转换为对象,Object类是所有Java类的基类。实例化是创建对象的过程,类和对象的关系类似于实体和其描述。文章还讨论了方法的调用,包括同一类内的调用、跨类调用以及静态方法的使用。最后,阐述了实例化顺序,强调父类和静态成员的优先级。
摘要由CSDN通过智能技术生成

目录

1.什么是对象?

1-1.对象的状态?

1-2.什么是对象的行为?

2.什么是类?

2-1类的关系

2-2包装类

2-2-1基本数据类型和包装类类型之间自动转换

2-3java语言的根类

3.什么是实例化?

4.类和对象的关系

5.定义一个类和创建一个对象

6.如何调用对象属性?

7.调用



1.什么是对象?

俗话说万物皆可为对象,对象代表现实世界中可以明确标识的一个实体。并且每个对象都有增加独特的标识,状态(属性)和行为(方法)。

1-1.对象的状态?

就是对象的属性或者说是对象的特征。状态是描述对象的属性。

1-2.什么是对象的行为?

就是这个对象有什么动作,或者说是由什么功能。而这个动作是由方法去定义的。例如:猫会跑,狗会叫,羊会吃草。这些都对象的动作,即为对象的方法。

2.什么是类?

类为对象定义属性个行为。例如:猫,狗,羊,这三个都属于动物,那么动物就是类,猫,狗,羊就是动物的其中三个对象。

其次类是一个模板,例如动物是一个类,这个类里面定义了三个属性即为名字,体重,性别。当我们对类进行实例化时,每一个实例化对象都具有这三个属性。(例如对动物实例化一个猫,这个猫就具有名字,体重,性别这三个属性)。

2-1类的关系

关联:描述两个类之间的活动。例如学生选取课程是student类和course类之间的一种关联。

聚集:是关联的一种特殊形式,代表了两个对象之间的归属关系。

所有者对象成为聚集对象   对应类称聚集类  ,从属对象称被聚集对象  所对应类称被聚集类。

组合:如果一个对象只归属一个聚集对象,那么它和聚集对象之间的关系称为组合。

2-2包装类

将基本数据类型并入对象或包装成对象(int---Integer类,double---Double类,char---Character类....)

2-2-1基本数据类型和包装类类型之间自动转换

基本数据类型转换为包装类对象的过程叫装箱。反之叫开箱。

例如:Integer[] inArrat={1,2,3};

System.out.println(intArrat[0]+intArrat[1]+intArrat[2])         //自动转换为int,然后相加

2-3java语言的根类

Object类是Java语言的根类,要么是一个类的直接父类,要么就是一个类的间接父类.

3.什么是实例化?

创建实例的过程称为实例化。(就是对类进行具体描述。例如:动物 ,对动物再具体实例  人, 猫,狗,羊.....)

4.类和对象的关系

两个之间的关系类似于苹果派配方和苹果派之间的关系。

5.定义一个类和创建一个对象

类是对象的定义,对象从类创建。

定义一个类public class+类名称{    }  (也可以不用加public)

创建一个猫对象:类名 +猫 = new 类名();

6.如何调用对象属性?

每创建一个对象,这个对象就具有类的方法,属性。

调用:对象名.属性(方法)

 class animal {              //定义了一个动物类
    String name;            //定义动物的名字
    double  weight;         //体重
    String gender ;          //性别  
 

    public static void main(String[] args) {         //主类
animal cat=new animal();                            //创建了一个类对象,这个对象叫猫
cat.gender="公的";                                  //给猫的性别输入内容,公的
        System.out.println(cat.gender);
    }
}

7.调用

1.同一个类内,可以用this可以调用方法。

public class one1 {
    public void method(){
        System.out.println("这是1的第一个方法");
    }
public  void method4(){
    System.out.println("这是1的第二个方法");
    this.method();
}

2.在同一个包,但不在同一个类。需要new一个实例,用实例去调用。


public class one1 {
    public void method(){
        System.out.println("这是1的第一个方法");
    }
public  void method4(){
    System.out.println("这是1的第二个方法");
    this.method();
}




public class one2 {
    public  void method3(){
        System.out.println("这是one2第一个方法3");
        one1 one=new one1();
        one.method();
    }
}


3.挎包调用,也是new一个实例,用实例调用。还需要调包。

import two.two1;

public class one1 {
    public void method(){
        System.out.println("这是1的第一个方法");
    }
public  void method4(){
    System.out.println("这是1的第二个方法");
    this.method();
    two1 two1=new two1();
    two1.method1();
}

}


package two;

public class two1 {
    public  static void method1 (){
        System.out.println("这是2的第一个方法");
    }
}

3.类名可以调用静态属性和静态方法

public class kkk {
private int a=10;
int b=20;
static int c=1;

public  static void method(){
    System.out.println("这是个静态方法");
}

    public static void main(String[] args) {
        kkk one=new kkk();
        System.out.println(kkk.c);
       kkk.method();
    }
}

7.实例化顺序

父类优先,静态优先,属性优先

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值