类和对象的使用(面向对象思想落地的实现)

//Java面向对象学习的三条主线:
//1.Java类及类的成员:属性、方法、构造器;代码块、内部类
//2.面向对象的三大特征:封装性、继承性、多态性
//3.其它关键字:this、super、static、final、abstract、interface、package、import等


//一、设计类其实就是设计类的成员
//属性:对应类中的成员变量。属性=成员变量=field
//方法:对应类中的成员方法。方法=成员方法=函数=method

//创建类的对象=类的实例化=实例化类

//二、类和对象的使用(面向对象思想落地的实现)
//1.创建类、设计类的成员
//2.创建类的对象
//3.通过  对象.属性   or   对象.方法  调用对象的结构。

//三、如果创建了一个类的多个对象,则每个对象都独立的拥有一套类的属性。(非static)
//意味着,如果我们修改一个对象的属性a,则不影响另外一个对象属性a的值。

//四、对象的内存解析
public class Lesson174 {

    public static void main(String[] args) {
        //2.创建类的对象
        Person p1=new Person();
        //调用对象的结构,属性,方法

        //3.调用属性:对象.属性
        p1.name="Tom";
        p1.isMale=true;
        System.out.println(p1.name);

        //3.调用方法:对象.方法
        p1.eat();
        p1.sleep();
        p1.talk("chinese");

        //----------------------
        Person p2 =new Person();
        System.out.println(p2.name);//null
        System.out.println(p2.isMale);//false

        //----------------------
        //相当于数组的赋值,本质上将p1变量保存的对象地址赋值给p3,导致p1和p3指向了堆空间中的同一个对象实体。
        Person p3=p1;
        System.out.println(p3.name);//Tom

        p3.age=10;
        System.out.println(p1.age);//这里输出p1变成了10

    }
}

class Person{//1.创建类、设计类的成员
    //属性
    String name;
    int age=1;
    boolean isMale;
    //方法
    public void eat(){
        System.out.println("人可以吃饭");
    }
    public void sleep(){
        System.out.println("人可以睡觉");
    }
    public void talk(String language){
        System.out.println("人可以说话,使用的是"+language);
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值