面向对象

类与对象的创建

类与对象的关系

类是对象的概括,对象是类的具体体现

根据一类对象进行概括,将对象的特征概括为属性,将对象的行为概括为方法,将这一类对象用一个类表示 — 类是对象的概括/抽取

在这里插入图片描述

通过new关键字来创建这个对象,然后可以给对象中的属性赋值,也可以调用方法

类与对象的创建

类是对象的模板

对象是类的具体

new关键字:使用new关键字创建具体对象,除了会创建一个具体的对象,还会同时对该对象完成初始化;

Student xiaoming=new Student();

Student类是一个类,xiaoming是以Student类创造的一个具体实例,一个对象,new会在内存空间中为xiaoming分配空间,并完成xiaoming的初始化

在这里插入图片描述

回顾方法的调用和定义

方法是人所写的,方便人们简化运算的工具

package oop;
//Op01类
public class Op01 {
    //main方法
    public static void main(String[] args) {



    }
/*
修饰符  返回值类型    方法名(...){
     return 返回值;
}
 */
    public String sayhello(){
        return "hello,world";
    }
    public int max(int a,int b){
        if (a > b){
            return a;
        }
        else
            return b;
        //return a > b ? a : b;     三元运算符

    }

}

java数据库里有很多的方法 ,都可以对应调用

值传递与引用传递

值传递: 只要是基本类型传递 都是值传递

package oop;

public class Op02 {
    public static void main(String[] args) {
        int a = 1;
        System.out.println(a);// a = 1

        //输出完代码后,执行 所创建的方法

        Op02.change(a);// a = 10    类名加方法名 =  调用方法 (非静态方法)

        //看看三个a有什么不同

        System.out.println(a);// a = 1
    }
    //值传递
    public static void change(int a){
         a = 10;
        System.out.println(a);
    }
}

引用传递:针对于基本类型进行封装,对封装进行传递,是引用传递

package oop;

public class Op04 {
    //引用传递:对象,本质还是值传递

    //对象 内存!
    public static void main(String[] args) {
        Person person = new Person();

        System.out.println(person.name);//null

        Op04.change(person);

        System.out.println(person.name);//孙志豪

    }
    public static void  change(Person person){
        //person 是一个对象:指向的--->Person person = new Person();
        person.name = "孙志豪";

    }
}
class Person{
    String name;//null
}

一个随手写着玩玩的冒泡排序。

package oop;

import java.util.Arrays;

public class Op03 {
    //引用传递: 对象  ,本质还是传递
    public static void main(String[] args) {
        int[] b = {1,2,45,6,7,9,6,1,9894};
        int[] ints = change01(b);    //new一个对象   ctrl + alt + v
        System.out.println(Arrays.toString(b));

    }
    //整个冒泡循环
    public static int[] change01(int[] b){
        int temp = 0;
        for (int i = 0; i < b.length-1; i++) {
            for (int j = 0; j < b.length-1-i; j++) {
                if (b[j] > b[j+1]){
                    temp = b[j+1];
                    b[j+1] = b[j];
                    b[j]  = temp;



                }

            }

        }
        return b;


    }

}
= b[j+1];
                    b[j+1] = b[j];
                    b[j]  = temp;



                }

            }

        }
        return b;


    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值