HVERITAS

导航

7.11 作业 韩宗轩

一.面向对象

1:局部变量和成员变量的区别?\

 

A:在类中的位置不同

      * 成员变量:在类中方法外

      * 局部变量:在方法定义中或者方法声明上

* B:在内存中的位置不同

      * 成员变量:在堆内存(成员变量属于对象,对象进堆内存)

      * 局部变量:在栈内存(局部变量属于方法,方法进栈内存)

* C:生命周期不同

      * 成员变量:随着对象的创建而存在,随着对象的消失而消失

      * 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失

* D:初始化值不同

      * 成员变量:有默认初始化值

      * 局部变量:没有默认初始化值;使用前必须定义,赋值,然后才能使用。

 

2:匿名对象是什么?应用场景是什么?

 

   定义:没有名字的对象.

应用场景: 1. 调用方法,仅仅只调用一次的时候。因为调用完之后匿名对象   就变成垃圾了.

         2. 匿名对象可以作为实际参数传递

 

3:封装是什么?java中封装的体现有哪些?请举例说明。

 

定义: 是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。

 

 

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

 

关键字特点:代表当前对象的引用

应用场景: 用来区分成员变量和局部变量重名

 

5:如何使用一个类的成员

先创建一个对象

 

类名 对象名 = new 类名();

 

对象名.变量名

 


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

二. 内存图

画图操作:

  1. 一个对象的内存图

 

 

  1. 两个对象的内存图

 

 

 
   


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


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

三. 自定义类

Student 类

 

class Demo1 {

      public static void main(String[] args) {

             System.out.println("Hello World!");

      }

}

class Student {

      String name;

      int age;

      String gender;

      public void study(){

             System.out.println("学生学习");

     

      }

      public void sleep(){

      System.out.println("学生睡觉");

      }

}

 

Phone 类

 

class Demo2 {

      public static void main(String[] args) {

             Phone p = new Phone();

             p.brand = "苹果";

             p.price = 9999;

             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 Car2 {

      public static void main(String[] args) {

             Car c1 = new Car();

             c1.color = "red";

             c1.num = 8;

             c1.run();

            

             Car c2 = new Car();

             c2.color = "blue";

             c2.num = 6;

             c2.run();

            

             Car c3 = c2;

             c3.run();

      }

}

class Car {

      String color;

      int num;

      public void run(){

      System.out.println(color + "---"+ num);

      }

}

posted on 2018-07-11 19:09  HVERITAS  阅读(142)  评论(0编辑  收藏  举报