0711作业

一.面向对象
1:局部变量和成员变量的区别?
局部变量:写在方法内或者方法上的变量叫局部变量
成员变量:写在方法外的变量叫成员变量
区别:1.在类中的位置不同.局部变量在方法上或方法内,而成员变量在类内方法外
2.存储地址不同.成员变量属于对象,存在于堆中.局部变量属于方法,存在于栈中.
3.生命周期不同.成员变量随着对象的创建而存在,随着对象的消失而消失.局部变量随着方法的创建而存在,随着方法的出栈而消失
4.初始化值不同.成员变量在堆中,有默认初始化值.而局部变量在栈中,必须给它赋值,才能调用,否则会报错
2:匿名对象是什么?应用场景是什么?
匿名对象就是在创建一个对象时不取名字,直接new一个对象
应用场景主要是一次性调用对象的方法
原因:调用对象的变量没有意义,多次调用方法会产生很多垃圾,所以最好只调用一次方法

3:封装是什么?java中封装的体现有哪些?请举例说明。
封装是指隐藏对象的属性和实现细节,只对外提供公共访问方式

Java中的封装,用关键字private  包是一种封装,不同的包之间不能相互访问

4:this关键字是什么?this关键字的应用场景?

5:如何使用一个类的成员
根据这个类 创建一个对象,那么这个类中的成员变量和成员方法都可以被对象使用
也可以将类当作一个参数,在方法中引用这个类

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

二. 内存图

画图操作:

1.一个对象的内存图

2.两个对象的内存图

3.三个引用两个对象的内存图


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

三. 自定义类

Student 类

class Demo1_Student {
    public static void main(String[] args) {
        Student stu = new Student();
        stu.name = "张三";
        stu.age = 23;
        stu.gender = "";
          //调用属性并赋值
        System.out.println(stu.name + "   " + stu.age +"   "+ stu.gender);
        //调用方法
        stu.study();
        stu.sleep();
    }
}
/*

*/
class Student {
    String name;//姓名属性
    int age; //年龄属性
    String gender; //性别属性

    public  void study(){  //定义学习的方法
        System.out.println("学习时间不准打瞌睡");
    }

    public void sleep(){
        System.out.println("睡觉时间不能玩手机");
    }
}


Phone 类

class Demo2_Phone {
    public static void main(String[] args) {
        Phone p =  new Phone();
        p.brand = "小米8";
        p.price = 2000;

        System.out.println("手机的品牌是"+p.brand +"  "+"价格是" +p.price);
        
        p.call();
        p.sendMessage();
        p.playGame();

    }
}

class Phone {
    String brand;
    int price;

    public void call() {
        System.out.println("这个手机可以用来给老爸老妈打电话");
    }

    public void sendMessage() {
        System.out.println("还可以给女朋友发微信");
    }

    public void playGame() {
        System.out.println("虽然也能玩打游戏,但是劝你不要玩");
    }
}


Car 类

class Demo1_Car {
    public static void main(String[] args) {
        Car c1 = new Car();
        c1.color = "yellow";
        c1.num = 4;
        System.out.println("这辆车的颜色是" + c1.color + "  " + "" + c1.num + "个轮子");

        c1.run();
        c1.charge();
    }
}
class Car {
    String color;
    int num;

    public void run() {
        System.out.println("	这辆车这么酷,像大黄蜂,跑起来很拉风");
    }

    public void charge() {
        System.out.println("		而且不需要加油,充电就可以了");
    }
}    
原文地址:https://www.cnblogs.com/zhangzheng1989/p/9296236.html